Halaman ini menjelaskan cara menjadwalkan pencadangan untuk Cassandra di Cloud Storage. Dalam metode ini, cadangan disimpan di bucket Cloud Storage yang ditentukan.
Untuk menjadwalkan pencadangan Cassandra, lakukan langkah-langkah berikut:
- Jalankan perintah
create-service-account
berikut untuk membuat akun layanan (SA) Google Cloud dengan peranroles/storage.objectAdmin
standar. Peran SA ini memungkinkan Anda menulis data cadangan ke Cloud Storage. Jalankan perintah di direktori$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/
../tools/create-service-account --env non-prod --dir ./
Perintah ini membuat satu akun layanan bernama
apigee-non-prod
untuk digunakan di lingkungan non-produksi dan menempatkan file kunci yang didownload di direktori./
.Untuk mengetahui informasi selengkapnya tentang akun layanan Google Cloud, lihat Membuat dan mengelola akun layanan.
- Perintah
create-service-account
menyimpan file JSON yang berisi kunci pribadi akun layanan. File disimpan di direktori yang sama tempat perintah dijalankan. Anda akan memerlukan jalur ke file ini dalam langkah-langkah berikut. - Buat bucket Cloud Storage. Tentukan kebijakan retensi data yang wajar untuk bucket. Apigee merekomendasikan kebijakan retensi data selama 15 hari.
- Buka file
overrides.yaml
. - Tambahkan properti
cassandra.backup
berikut untuk mengaktifkan pencadangan. Jangan menghapus properti yang sudah dikonfigurasi.Parameter
cassandra: ... backup: enabled: true serviceAccountPath: SA_JSON_FILE_PATH dbStorageBucket: CLOUD_STORAGE_BUCKET_PATH schedule: BACKUP_SCHEDULE_CODE cloudProvider: "GCP" # required verbatim "GCP" (all caps) ...
Contoh
... cassandra: storage: type: gcepd capacity: 50Gi gcepd: replicationType: regional-pd auth: default: password: "abc123" admin: password: "abc234" ddl: password: "abc345" dml: password: "abc456" nodeSelector: key: cloud.google.com/gke-nodepool value: apigee-data backup: enabled: true serviceAccountPath: "/Users/myhome/.ssh/my-cassandra-backup-sa.json" dbStorageBucket: "gs://myname-cassandra-backup" schedule: "45 23 * * 6" cloudProvider: "GCP" ...
Dengan keterangan:
- Terapkan perubahan konfigurasi ke cluster baru. Contoh:
helm upgrade datastore apigee-datastore/ \ --namespace APIGEE_NAMESPACE \ --atomic \ -f OVERRIDES_FILE.yaml
Dengan OVERRIDES_FILE adalah jalur ke file penggantian yang baru saja Anda edit.
- Verifikasi tugas pencadangan. Contoh:
kubectl get cronjob -n APIGEE_NAMESPACE
NAME SCHEDULE SUSPEND ACTIVE LAST SCHEDULE AGE apigee-cassandra-backup 33 * * * * False 0 <none> 94s
Properti | Deskripsi |
---|---|
backup:enabled |
Pencadangan dinonaktifkan secara default. Anda harus menetapkan properti ini ke true . |
backup:serviceAccountPath |
SA_JSON_FILE_PATH Jalur di sistem file Anda ke file JSON akun layanan yang didownload saat Anda menjalankan perintah Jalur harus relatif terhadap direktori diagram apigee-datastore. Misalnya, |
backup:dbStorageBucket |
CLOUD_STORAGE_BUCKET_PATH Jalur bucket Cloud Storage dalam format ini: |
backup:cloudProvider |
Untuk pencadangan ke Cloud Storage, tetapkan properti ke |
backup:schedule |
BACKUP_SCHEDULE_CODE Waktu saat pencadangan dimulai, yang ditentukan dalam
sintaksis crontab standar. Default: |
Meluncurkan pencadangan manual
Tugas pencadangan dipicu secara otomatis sesuai dengan jadwal cron yang ditetapkan di
cassandra.backup.schedule dalam file
overrides.yaml
Anda. Namun, Anda juga dapat memulai tugas pencadangan secara manual jika diperlukan
menggunakan perintah berikut:
kubectl create job -n APIGEE_NAMESPACE --from=cronjob/apigee-cassandra-backup MANUAL_BACKUP_JOB_NAME
Dengan MANUAL_BACKUP_JOB_NAME adalah nama tugas pencadangan manual yang akan dibuat.