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 create-service-account berikut perintah untuk membuat akun layanan (SA) Google Cloud dengan Peran roles/storage.objectAdmin. 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 akan membuat satu akun layanan bernama apigee-non-prod untuk digunakan di lingkungan non-produksi dan menempatkan file kunci yang didownload di ./service-accounts saat ini. 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 Anda. 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 data yang wajar kebijakan retensi untuk bucket. Apigee merekomendasikan kebijakan retensi data selama 15 hari.
  4. Buka file overrides.yaml.
  5. Tambahkan properti cassandra.backup berikut untuk mengaktifkan pencadangan. Larangan menghapus 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 akun layanan File JSON yang diunduh saat Anda menjalankan perintah ./tools/create-service-account.

    Anda juga dapat memberikan jalur file relatif. Jalur itu akan bersifat relatif ke 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 mulai pencadangan, 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 pengganti 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