Ringkasan pemulihan Cassandra

Halaman ini memberikan ringkasan pemulihan 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 dari bencana. Pemulihan mengambil data Anda dari lokasi cadangan dan memulihkan data tersebut ke cluster Cassandra baru dengan jumlah node yang sama. Tidak ada data cluster yang diambil dari gugus Cassandra lama. Tujuan proses pemulihan ini adalah mengembalikan penginstalan hybrid Apigee ke status operasional sebelumnya menggunakan data cadangan dari snapshot.

Penggunaan cadangan untuk pemulihan tidak direkomendasikan untuk skenario berikut:

  • Kegagalan node Cassandra.
  • Penghapusan data secara tidak sengaja seperti apps, developers, dan api_credentials.
  • Satu atau beberapa region tidak beroperasi dalam deployment hybrid multi-region.

Deployment dan arsitektur operasional Apigee Cassandra menangani redundansi dan fault tolerance untuk suatu region. Dalam sebagian besar kasus, penerapan produksi multi-region yang direkomendasikan untuk hybrid berarti bahwa kegagalan region dapat dipulihkan dari live region lain menggunakan prosedur penonaktifan dan perluasan region, bukan memulihkan dari cadangan.

Sebelum 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 valid terakhir dan saat pemulihan selesai.
  • Waktu pemulihan: Waktu pemulihan bergantung pada ukuran data dan cluster.
  • Data pemilihan: Anda tidak dapat hanya memilih data tertentu yang akan 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 guna memastikan cassandra:hostNetwork disetel ke false sebelum melakukan pemulihan. Untuk 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 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 running 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 berada dalam status Bound 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 Cassandra PV 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 Pengontrol Apigee dalam status Running 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 untuk Cassandra sedikit berbeda bergantung pada apakah Apigee Hybrid Anda di-deploy di satu atau beberapa region. Untuk mengetahui langkah-langkah pemulihan mendetail, lihat dokumentasi berikut: