Halaman ini menjelaskan cara memulihkan Cassandra di satu region.
Dalam deployment region tunggal, Apigee Hybrid di-deploy dalam satu pusat data atau region. Jika Anda memiliki beberapa organisasi Apigee dalam deployment Anda, proses pemulihan akan memulihkan data untuk semua organisasi. Dalam penyiapan multiorganisasi, Anda tidak dapat memulihkan organisasi tertentu.
Memulihkan region dari cadangan
-
Perbarui detail pemulihan Cassandra di 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 dipulihkan. Gunakan namespace yang sama seperti di cluster asli Anda.
cassandra:hostNetwork
hostNetwork
diperlukan dan harus selalu ditetapkan kefalse
.restore:enabled
Pemulihan dinonaktifkan secara default. Anda harus menyetel ini ke true
.restore:serviceAccountPath
SA_JSON_FILE_PATH
Jalur di sistem file ke akun layanan yang Anda buat untuk pencadangan.
restore:dbStorageBucket
CLOUD_STORAGE_BUCKET_NAME
Nama bucket Google Cloud Storage yang menyimpan arsip cadangan yang akan digunakan untuk 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 direktori VM dengan bucket. Setiap nama file berisi nilai stempel waktu. Misalnya,backup_20210203213003_apigee-cassandra-default-0.tgz
Dengan 20210203213003 adalah nilai
snapshotTimestamp
yang akan Anda digunakan jika Anda ingin memulihkan cadangan yang dibuat pada saat itu.backup:enabled
Anda harus menetapkan properti ini ke false
jika sebelumnya telah ditetapkan ketrue
. -
Jika Anda tidak memiliki cluster yang bersih untuk memulai, ikuti Menonaktifkan region hybrid untuk helm untuk memperbarui penginstalan Hybrid yang sudah ada agar memenuhi syarat (Anda dapat membiarkan Cert Manager tetap terinstal). Ini akan membawa Anda pada kondisi yang sama seolah-olah Anda akan mengikuti Manual penyiapan runtime Helm sampai awal Langkah 11.
-
Pastikan tidak ada pod yang tersisa di namespace Apigee:
kubectl get pods -n APIGEE_NAMESPACE
-
Jika menggunakan cadangan CSI, pastikan Anda dapat melihat volumesnapshot yang ingin Anda gunakan untuk proses pemulihan dengan menjalankan:
kubectl get volumesnapshot -n APIGEE_NAMESPACE
-
Instal semua komponen Hybrid satu per satu seperti yang dijelaskan di Langkah 10: Instal Apigee Hybrid menggunakan Helm . Perhatikan bahwa pod
apigee-cassandra-restore
akan mendapatkan dibuat setelah Anda menjalankan perintah untuk menginstaldatastore
, tetapi perintah itu hanya masuk ke statusrunning
setelah Anda menginstal komponenapigee-org
.
Lihat Ringkasan pencadangan Cassandra untuk detail selengkapnya tentang pencadangan dan pemulihan Cassandra.
Verifikasi progres tugas pemulihan dan pastikan apigeeds
dan semua pod lainnya sudah aktif:
- Periksa
apigeeds
:kubectl get apigeeds -n APIGEE_NAMESPACE
- Periksa semua pod lainnya:
kubectl get pods -n APIGEE_NAMESPACE
Setelah berhasil menyelesaikan pemulihan dan konfirmasi bahwa komponen runtime sehat, sebaiknya konfigurasi pencadangan pada cluster:
- Hapus konfigurasi
restore
dari fileoverrides-restore.yaml
. - Tambahkan konfigurasi
backup
ke fileoverrides-restore.yaml
. - Terapkan konfigurasi
backup
dengan perintah berikut:helm upgrade datastore apigee-datastore/ \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides-restore.yaml