Ringkasan pemulihan Cassandra

Halaman ini memberikan ringkasan tentang cara memulihkan Cassandra di Apigee hybrid.

Mengapa menggunakan pemulihan?

Anda dapat menggunakan cadangan untuk memulihkan infrastruktur Apigee dari awal jika terjadi kegagalan besar, seperti kehilangan data yang tidak dapat dipulihkan di instance hybrid Apigee Anda akibat bencana. Pemulihan mengambil data Anda dari lokasi cadangan dan memulihkan data ke cluster Cassandra baru dengan jumlah node yang sama. Tidak ada data cluster yang diambil dari cluster Cassandra lama. Tujuan proses pemulihan adalah mengembalikan penginstalan hybrid Apigee ke status operasional sebelumnya menggunakan data cadangan dari snapshot.

Penggunaan pencadangan untuk memulihkan tidak direkomendasikan untuk skenario berikut:

  • Kegagalan node Cassandra.
  • Penghapusan data yang tidak disengaja seperti apps, developers, dan api_credentials.
  • Satu atau beberapa region mengalami gangguan dalam deployment hybrid multi-region.

Deployment Cassandra Apigee dan arsitektur operasional menangani redundansi dan fault tolerance untuk satu region. Pada umumnya, penerapan produksi multi-region hybrid yang direkomendasikan berarti kegagalan region dapat dipulihkan dari region aktif lainnya menggunakan prosedur penghentian dan perluasan region, bukan memulihkan dari cadangan.

Sebelum Anda mulai menerapkan pemulihan dari cadangan Cassandra, perhatikan hal-hal berikut:

  • Periode nonaktif: Akan ada periode nonaktif selama durasi pemulihan.
  • Kehilangan data: Akan ada kehilangan data antara pencadangan terakhir yang valid dan waktu pemulihan selesai.
  • Waktu pemulihan: Waktu pemulihan bergantung pada ukuran data dan cluster.
  • Memilih data tertentu: Anda tidak dapat memilih hanya data tertentu untuk dipulihkan. Pemulihan akan memulihkan seluruh cadangan yang Anda pilih.

Pemulihan multi-region

Jika menginstal Apigee hybrid ke beberapa region, Anda harus memeriksa file penggantian untuk region yang dipulihkan untuk memastikan cassandra:hostNetwork ditetapkan ke false sebelum melakukan pemulihan. Untuk mengetahui informasi selengkapnya, lihat Memulihkan di beberapa region.

Prasyarat

Pastikan semua prasyarat berikut berhasil. Selidiki kegagalan prasyarat sebelum melanjutkan pemulihan.

  1. Pastikan semua pod Cassandra sudah aktif dan berjalan dengan perintah berikut.
    kubectl get pods -n apigee -l app=apigee-cassandra

    Output Anda akan terlihat seperti contoh berikut:

    NAME                         READY   STATUS    RESTARTS   AGE
    apigee-cassandra-default-0   1/1     Running   0          14m
    apigee-cassandra-default-1   1/1     Running   0          13m
    apigee-cassandra-default-2   1/1     Running   0          11m
    exampleuser@example hybrid-files %
          
  2. Pastikan statefulset Cassandra menunjukkan bahwa semua pod berjalan dengan perintah berikut.
    kubectl get sts -n apigee -l app=apigee-cassandra

    Output Anda akan terlihat seperti contoh berikut:

    NAME                       READY   AGE
    apigee-cassandra-default   3/3     15m
        
  3. Pastikan resource ApigeeDatastore dalam status berjalan dengan perintah berikut.
    kubectl get apigeeds -n apigee

    Output Anda akan terlihat seperti contoh berikut:

    NAME      STATE     AGE
    default   running   16m
        
  4. Pastikan semua PVC Cassandra dalam status Terikat dengan perintah berikut.
    kubectl get pvc -n apigee -l app=apigee-cassandra

    Output Anda akan terlihat seperti contoh berikut:

    NAME                                        STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
    cassandra-data-apigee-cassandra-default-0   Bound    pvc-a14184e7-8745-4b30-8069-9d50642efe04   10Gi       RWO            standard-rwo   17m
    cassandra-data-apigee-cassandra-default-1   Bound    pvc-ed129dcb-4706-4bad-a692-ac7c78bad64d   10Gi       RWO            standard-rwo   15m
    cassandra-data-apigee-cassandra-default-2   Bound    pvc-faed0ad1-9019-4def-adcd-05e7e8bb8279   10Gi       RWO            standard-rwo   13m
        
  5. Pastikan semua PV Cassandra dalam status Terikat dengan perintah berikut.
    kubectl get pv -n apigee

    Output Anda akan terlihat seperti contoh berikut:

    NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS   CLAIM                                              STORAGECLASS   REASON   AGE
    pvc-a14184e7-8745-4b30-8069-9d50642efe04   10Gi       RWO            Delete           Bound    apigee/cassandra-data-apigee-cassandra-default-0   standard-rwo            17m
    pvc-ed129dcb-4706-4bad-a692-ac7c78bad64d   10Gi       RWO            Delete           Bound    apigee/cassandra-data-apigee-cassandra-default-1   standard-rwo            16m
    pvc-faed0ad1-9019-4def-adcd-05e7e8bb8279   10Gi       RWO            Delete           Bound    apigee/cassandra-data-apigee-cassandra-default-2   standard-rwo            14m
        
  6. Pastikan resource Apigee Controller dalam status Berjalan dengan perintah berikut.
    kubectl get pods -n apigee-system -l app=apigee-controller

    Output Anda akan terlihat seperti contoh berikut:

    NAME                                         READY   STATUS    RESTARTS   AGE
    apigee-controller-manager-856d9bb7cb-cfvd7   2/2     Running   0          20m
        

Bagaimana cara memulihkan?

Langkah-langkah pemulihan Cassandra sedikit berbeda bergantung pada apakah hybrid Apigee Anda di-deploy di satu region atau beberapa region. Untuk mengetahui langkah-langkah pemulihan yang mendetail, lihat dokumentasi berikut: