Menonaktifkan organisasi hybrid

Dokumen ini menjelaskan langkah-langkah untuk menghentikan organisasi dari deployment hybrid. Penghentian organisasi berarti menghapus semua data yang terkait dengan organisasi di semua pod Cassandra di semua Kubernetes klaster.

Batasan

Hanya satu organisasi yang dapat dinonaktifkan dalam satu waktu. Menonaktifkan beberapa organisasi secara bersamaan tidak didukung.

Dapatkan nama organisasi

Beberapa perintah dalam petunjuk ini mengharuskan Anda menggunakan nama organisasi yang diformat dengan benar.

Guna mendapatkan nama organisasi untuk digunakan dalam perintah di halaman ini:

  1. Ambil nama org dari file overrides.yaml org.
  2. Jika nama organisasi berisi tanda hubung ("-"), ganti dengan garis bawah ("_").

Petunjuk

Ikuti petunjuk berikut untuk menonaktifkan organisasi dari deployment hybrid.

  1. Cadangkan organisasi
    1. Jika belum diaktifkan, aktifkan pencadangan pada deployment hybrid. Di multi-region gunakan deployment hybrid yang beroperasi di region utama. Lihat Ringkasan pencadangan Cassandra untuk informasi tentang pencadangan hybrid.
    2. Picu tugas pencadangan hybrid menggunakan perintah berikut:

      kubectl create job -n apigee --from=cronjob/apigee-cassandra-backup BACKUP_JOB_NAME

      BACKUP_JOB_NAME dapat berupa nama penampung yang valid.

    3. Setelah tugas pencadangan selesai, gunakan "Periksa status tugas pencadangan" dan "Periksa log cadangan" di Memantau pencadangan untuk memverifikasi bahwa pencadangan berhasil.

  2. (Opsional) Jika Anda telah mengonfigurasi Apigee Telemetry (Metrics dan Logger) di organisasi untuk dihapus, ikuti langkah berikut untuk mengonfigurasi ulang, sehingga metrik dan data log berlaku untuk organisasi/project baru.
    1. Jalankan perintah ini untuk organisasi tempat Anda ingin mengirimkan data. Pastikan untuk menggunakan File overrides.yaml untuk organisasi. Misalnya, jika organisasi yang akan dinonaktifkan "test-dev" file overrides.yaml harus berisi org: test-dev org.
      helm upgrade telemetry apigee-telemetry/ \
        --namespace apigee \
        --atomic \
        -f OVERRIDES_FILE.yaml
      
    2. Jalankan perintah ini, pastikan untuk menggunakan org/project yang benar:
      kubectl -n apigee get apigeetelemetry apigee-telemetry -oyaml | grep `gcpProjectID:`
  3. Hapus resource Kubernetes organisasi dari deployment hybrid.
    1. Pastikan konteks saat ini adalah konteks yang benar untuk cluster Kubernetes sumber:
      kubectl config current-context

      Jika perlu, setel konteks Kubernetes.

      Buat daftar konteks Anda saat ini untuk melihat nama konteks setiap cluster:

      kubectl config get-contexts

      Tetapkan konteks ke cluster dan region yang ingin Anda nonaktifkan:

      kubectl config use-context CONTEXT_NAME

      Dengan CONTEXT_NAME adalah nama konteks untuk cluster dan region.

      Contoh:

          kubectl config get-contexts
          CURRENT   NAME                                                   CLUSTER                                                AUTHINFO                                               NAMESPACE
                    gke_example-org-1_us-central1_example-cluster-1        gke_example-org-1_us-central1_example-cluster-1        gke_example-org-1_us-central1_example-cluster-1        apigee
          *         gke_example-org-1_us-central1_example-cluster-2        gke_example-org-1_us-central1_example-cluster-2        gke_example-org-1_us-central1_example-cluster-2        apigee
                    gke_example-org-1_us-west1_example-cluster-2           gke_example-org-1_us-west1_example-cluster-2           gke_example-org-1_us-west1_example-cluster-2           apigee
      
          kubectl config use-context gke_example-org-1_us-west1_example-cluster-2
    2. Hapus virtualhost.

      Ulangi langkah ini untuk setiap grup lingkungan:

      helm -n apigee delete ENV_GROUP_NAME
      
    3. Hapus lingkungan. Ulangi langkah ini untuk setiap lingkungan:
      helm -n apigee delete ENV_NAME
      
    4. Hapus organisasi Apigee.
      helm -n apigee delete ORG_NAME
      
  4. Hapus data organisasi dari deployment hybrid. Setelah langkah ini selesai semua data organisasi akan hilang dari deployment hybrid.
    1. Eksekusi ke pod apigee-cassandra-default-0:
      kubectl exec -it -n apigee apigee-cassandra-default-0 -- /bin/bash
      
    2. Jalankan perintah berikut. Salin daftar semua nama yang ditampilkan di output. Daftar ini akan diperlukan nanti.
      find /opt/apigee/data/apigee-cassandra/ -iname '*ORG_NAME_hybrid' -type d -maxdepth 2 -printf "%f\n"

      Lihat Mendapatkan nama organisasi untuk mengetahui petunjuk cara menemukan dan menyiapkan ORG_NAME.

      Keluar dari pod apigee-cassandra-default-0.

    3. Membuat pod klien debug Cassandra seperti yang dijelaskan dalam Buat penampung klien untuk proses debug. Lanjutkan ke langkah berikutnya setelah mendapatkan perintah cqlsh.
    4. Jalankan perintah berikut di perintah cqlsh:
      desc keyspaces;

      Pastikan perintah ini tidak menampilkan error.

      Untuk setiap nama dalam daftar yang dibuat sebelumnya dari apigee apigee-cassandra-default-0, jalankan perintah berikut:

      drop keyspace ;

      Keluar dari pod klien debug Cassandra.

    5. Lakukan mulai ulang berkelanjutan untuk semua pod Cassandra. Memulai ulang pod Cassandra dapat dilakukan dengan pesanan apa pun selama hanya satu pod Cassandra yang dimulai ulang pada satu waktu. Untuk multi-region deployment, lakukan mulai ulang berkelanjutan pada semua pod Cassandra di setiap region hybrid.

      Jalankan perintah berikut dan pastikan status menampilkan "Running":

      kubectl get apigeeds -n apigee

      Mulai ulang satu pod Cassandra dengan perintah berikut:

      kubectl delete pod -n apigee CASSANDRA_POD_NAME

      Tunggu hingga pod mencapai status Running menggunakan:

      kubectl get pods -n apigee

      Mulai ulang pod Cassandra berikutnya.

    6. Setelah menjalankan perintah cqlsh, jalankan perintah berikut di semua Pod Cassandra dalam deployment hybrid. Untuk deployment hybrid multi-region, jalankan perintah di semua pod Cassandra di semua region hybrid.
      kubectl exec -it -n apigee CASSANDRA_POD_NAME -- /bin/bash
      find /opt/apigee/data/apigee-cassandra/ -iname '*ORG_NAME_hybrid' -type d -maxdepth 2

      Lihat Mendapatkan nama organisasi untuk mengetahui petunjuk cara menemukan dan menyiapkan ORG_NAME.

      find /opt/apigee/data/apigee-cassandra/ -iname '*ORG_NAME_hybrid' -type d -maxdepth 2 -exec rm -rf {} +
    7. Keluar dari pod Cassandra.