Memulihkan di beberapa wilayah

Halaman ini menjelaskan cara memulihkan Cassandra di beberapa region.

Dalam deployment multi-region, Apigee Hybrid di-deploy di beberapa lokasi geografis di seluruh pusat data yang berbeda. Penting untuk diperhatikan bahwa, jika Anda memiliki beberapa organisasi Apigee dalam deployment, proses pemulihan akan memulihkan data untuk semua organisasi. Dalam pengaturan multi-organisasi, memulihkan organisasi tertentu saja tidak didukung.

Memulihkan cassandra

Dalam deployment multi-region, ada dua cara yang dapat dilakukan untuk memperbaiki region yang gagal. Topik ini menjelaskan pendekatan berikut:

  • Memulihkan region yang gagal - Menjelaskan langkah-langkah untuk memulihkan region yang gagal berdasarkan di wilayah yang sehat.
  • Memulihkan region yang gagal - Menjelaskan langkah-langkah untuk memulihkan region yang gagal cadangan. Pendekatan ini hanya diperlukan jika semua region campuran terkena dampak.

Memulihkan region yang gagal

Untuk memulihkan region yang gagal dari region yang responsif, lakukan langkah-langkah berikut:

  1. Mengalihkan traffic API dari wilayah yang terpengaruh ke wilayah kerja yang baik. Rencana kapasitas yang sesuai untuk mendukung traffic yang dialihkan dari region yang gagal.
  2. Menonaktifkan region yang terdampak. Untuk setiap wilayah yang terpengaruh, ikuti langkah-langkah yang diuraikan di Menonaktifkan region hybrid. Tunggu hingga penonaktifan selesai sebelum melanjutkan ke langkah berikutnya.
  3. Pulihkan wilayah yang terdampak. Untuk memulihkan, buat region baru, seperti yang dijelaskan di Deployment multi-region di GKE, GKE lokal, dan AKS.

Memulihkan dari cadangan

Cadangan Cassandra dapat berada di Cloud Storage atau di server jarak jauh berdasarkan konfigurasi Anda. Untuk memulihkan Cassandra dari cadangan, lakukan langkah-langkah berikut:

  1. Hapus deployment hybrid apigee dari semua region:
    apigeectl delete -f overrides.yaml
  2. Pulihkan region yang diinginkan dari cadangan. Untuk informasi selengkapnya, lihat Memulihkan wilayah dari cadangan.

  3. Hapus referensi wilayah yang dihapus dan tambahkan referensi wilayah yang dipulihkan di Metadata KeySpaces.
  4. Dapatkan nama wilayah dengan menggunakan opsi nodetool status.
    kubectl exec -n apigee -it apigee-cassandra-default-0 -- bash
          nodetool  -u APIGEE_JMX_USER -pw APIGEE_JMX_PASSWORD status |grep -i Datacenter

    dengan:

    • APIGEE_JMX_USER adalah nama pengguna untuk pengguna operasi JMX Cassandra. Bekas untuk mengotentikasi dan berkomunikasi dengan antarmuka Cassandra JMX. Lihat cassandra:auth:jmx:username
    • APIGEE_JMX_PASSWORD adalah sandi untuk pengguna operasi JMX Cassandra. Lihat cassandra:auth:jmx:password
  5. Update replikasi KeySpaces.
    1. Buat penampung klien dan hubungkan ke Cassandra melalui antarmuka CQL.
    2. Dapatkan daftar keyspace pengguna dari antarmuka CQL:
      cqlsh CASSANDRA_SEED_HOST -u APIGEE_DDL_USER -p APIGEE_DDL_PASSWORD
            --ssl -e "select keyspace_name from system_schema.keyspaces;"|grep -v system

      dengan:

      • CASSANDRA_SEED_HOST adalah host seed multi-region Cassandra. Untuk sebagian besar penginstalan multi-region, gunakan alamat IP host di region pertama Anda. Lihat Mengonfigurasi Apigee hybrid untuk multi-region dan cassandra:externalSeedHost
      • APIGEE_DDL_USER dan APIGEE_DDL_PASSWORD adalah admin nama pengguna dan sandi untuk pengguna Cassandra Data Definition Language (DDL). Tujuan nilai default-nya adalah "ddl_user" dan "iloveapis123".

        Lihat cassandra.auth.ddl.password di referensi Properti Konfigurasi dan Perintah Opsi Baris dalam dokumentasi Apache Cassandra cqlsh.

    3. Untuk setiap keyspace, jalankan perintah berikut dari antarmuka CQL untuk memperbarui setelan replikasi:
      ALTER KEYSPACE KEYSPACE_NAME WITH replication = {'class': 'NetworkTopologyStrategy', 'REGION_NAME':3};

      dengan:

      • KEYSPACE_NAME adalah nama keyspace yang tercantum di output langkah sebelumnya.
      • REGION_NAME adalah nama wilayah yang diperoleh di Langkah 4.