Menjadwalkan pencadangan di Cloud Storage

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:

  1. Jalankan perintah create-service-account berikut untuk membuat akun layanan (SA) Google Cloud dengan peran roles/storage.objectAdmin standar. Peran SA ini memungkinkan Anda menulis data cadangan ke Cloud Storage. Jalankan perintah berikut di direktori hybrid-base-directory/hybrid-files:
    ./tools/create-service-account --env non-prod --dir ./service-accounts
    Perintah ini membuat satu akun layanan bernama apigee-non-prod untuk digunakan di lingkungan non-produksi dan menempatkan file kunci yang didownload di direktori ./service-accounts. Untuk informasi selengkapnya tentang akun layanan Google Cloud, lihat Membuat dan mengelola akun layanan.
  2. 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.
  3. Buat bucket Cloud Storage. Tentukan kebijakan retensi data yang wajar untuk bucket. Apigee merekomendasikan kebijakan retensi data selama 15 hari.
  4. Buka file overrides.yaml.
  5. Tambahkan properti cassandra.backup berikut untuk mengaktifkan pencadangan. Jangan hapus 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"
        
    
    
      ... 
  6. Dengan keterangan:
    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 ./tools/create-service-account.

    Anda juga dapat memberikan jalur file relatif. Jalur akan bersifat relatif terhadap direktori hybrid-base-directory/hybrid-files.

    backup:dbStorageBucket

    CLOUD_STORAGE_BUCKET_PATH

    Jalur bucket Cloud Storage dalam format ini: gs://BUCKET_NAME. gs:// wajib diisi.

    backup:cloudProvider

    GCP/HYBRID

    Untuk pencadangan Cloud Storage, tetapkan properti ke GCP. Misalnya, cloudProvider: "GCP".

    Untuk pencadangan server jarak jauh, tetapkan properti ke HYBRID. Misalnya, cloudProvider: "HYBRID".

    backup:schedule

    BACKUP_SCHEDULE_CODE

    Waktu saat pencadangan dimulai, yang ditentukan dalam sintaksis crontab standar. Default: 0 2 * * *

  7. Terapkan perubahan konfigurasi ke cluster baru. Contoh:
    $APIGEECTL_HOME/apigeectl apply --datastore -f YOUR_OVERRIDES_FILE

    Dengan YOUR_OVERRIDES_FILE adalah jalur ke file penggantian yang baru saja Anda edit.

  8. Verifikasi tugas pencadangan. Contoh:
    kubectl get cronjob -n apigee
    NAME                      SCHEDULE     SUSPEND   ACTIVE   LAST SCHEDULE   AGE
    apigee-cassandra-backup   33 * * * *   False     0        <none>          94s