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 Google Cloud (SA) 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 dalam lingkungan non-produksi dan menempatkan file kunci yang didownload di direktori ./service-accounts. Untuk mengetahui 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 tersebut disimpan di direktori yang sama dengan 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 apa pun 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 tersebut akan 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 cadangan 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, 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