Memulihkan di satu region

Halaman ini menjelaskan cara memulihkan Cassandra di satu region.

Dalam deployment region tunggal, Apigee hybrid di-deploy di satu pusat data atau region. Jika Anda memiliki beberapa organisasi Apigee dalam deployment, proses pemulihan akan memulihkan data untuk semua organisasi. Dalam penyiapan multi-organisasi, Anda tidak dapat memulihkan organisasi tertentu.

Memulihkan region dari cadangan

  1. Perbarui detail pemulihan Cassandra dalam file overrides.yaml:

    namespace: YOUR_RESTORE_NAMESPACE # Use the same namespace as in your original cluster.
    cassandra:
      hostNetwork: false
      ...
      restore:
        enabled: true
        serviceAccountPath: "SA_JSON_FILE_PATH"
        dbStorageBucket: "CLOUD_STORAGE_BUCKET_NAME"
        cloudProvider: "GCP"  # required verbatim "GCP" (all caps)
        snapshotTimestamp: "TIMESTAMP"
      ...
      backup:
        enabled: false
      ...

    Dengan keterangan:

    Properti Deskripsi
    namespace

    YOUR_RESTORE_NAMESPACE

    Namespace untuk pemulihan. Gunakan namespace yang sama seperti di cluster asli Anda.

    cassandra:hostNetwork

    hostNetwork diperlukan dan harus selalu ditetapkan ke false.

    restore:enabled Pemulihan dinonaktifkan secara default. Anda harus menetapkan properti ini ke true.
    restore:serviceAccountPath

    SA_JSON_FILE_PATH

    Jalur di sistem file Anda ke akun layanan yang Anda buat untuk pencadangan.

    restore:dbStorageBucket

    CLOUD_STORAGE_BUCKET_NAME

    Nama bucket Google Cloud Storage yang menyimpan arsip cadangan untuk digunakan dalam pemulihan data.

    restore:cloudProvider

    GCP

    Properti cloudProvider: "GCP" wajib diisi.

    restore:snapshotTimestamp

    TIMESTAMP

    Stempel waktu snapshot cadangan yang akan dipulihkan. Untuk memeriksa stempel waktu yang dapat digunakan, buka dbStorageBucket dan lihat file yang ada di bucket. Setiap nama file berisi nilai stempel waktu. Misalnya, backup_20210203213003_apigee-cassandra-default-0.tgz

    Dengan 20210203213003 adalah nilai snapshotTimestamp yang akan Anda gunakan jika ingin memulihkan cadangan yang dibuat pada waktu tersebut.

    backup:enabled Anda harus menetapkan properti ini ke false jika sebelumnya ditetapkan ke true.
  2. Jika Anda tidak memiliki cluster bersih untuk memulai, ikuti dokumentasi Menonaktifkan region hybrid untuk helm untuk mengubah penginstalan Hybrid yang ada ke status bersih (Anda dapat membiarkan Cert Manager diinstal). Tindakan ini akan membawa Anda ke status yang sama seolah-olah Anda telah mengikuti panduan penyiapan runtime Helm hingga awal Langkah 11.

  3. Pastikan tidak ada pod yang tersisa di namespace Apigee:

    kubectl get pods -n APIGEE_NAMESPACE
  4. Jika Anda menggunakan pencadangan CSI, pastikan Anda dapat melihat volumesnapshot yang ingin digunakan untuk proses pemulihan dengan menjalankan:

    kubectl get volumesnapshot -n APIGEE_NAMESPACE
              
  5. Instal semua komponen Hybrid satu per satu seperti yang dijelaskan dalam Langkah 10: Menginstal Apigee hybrid menggunakan Helm . Perhatikan bahwa pod apigee-cassandra-restore akan dibuat setelah Anda menjalankan perintah untuk menginstal datastore, tetapi pod tersebut hanya akan berstatus running setelah Anda menginstal komponen apigee-org.

Lihat Ringkasan pencadangan Cassandra untuk mengetahui detail selengkapnya tentang pencadangan dan pemulihan Cassandra.

Verifikasi progres tugas pemulihan dan konfirmasi bahwa apigeeds dan semua pod lainnya sudah aktif:

  1. Periksa apigeeds:
    kubectl get apigeeds -n APIGEE_NAMESPACE
  2. Periksa semua pod lainnya:
    kubectl get pods -n APIGEE_NAMESPACE

Setelah pemulihan berhasil diselesaikan dan konfirmasi bahwa komponen runtime berfungsi dengan baik, sebaiknya konfigurasikan pencadangan di cluster:

  1. Hapus konfigurasi restore dari file overrides-restore.yaml.
  2. Tambahkan konfigurasi backup ke file overrides-restore.yaml.
  3. Terapkan konfigurasi backup dengan perintah berikut:
    helm upgrade datastore apigee-datastore/ \
      --namespace APIGEE_NAMESPACE \
      --atomic \
      -f overrides-restore.yaml