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 dieksekusi. 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" # For remote server backup set this to HYBRID (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 \ --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
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 Cloud Storage, tetapkan properti ke Untuk pencadangan server jarak jauh, tetapkan properti ke |
backup:schedule |
BACKUP_SCHEDULE_CODE Waktu saat pencadangan dimulai, yang ditentukan dalam
sintaksis crontab standar. Default: |
Meluncurkan pencadangan manual
Cadangan Cassandra dibuat secara otomatis sesuai jadwal cron yang ditetapkan dalam file overrides.yaml
.
Untuk memulai pencadangan manual, gunakan perintah ini:
kubectl create job -n APIGEE_NAMESPACE --from=cronjob/apigee-cassandra-backup BACKUP_POD_NAME