Menonaktifkan organisasi hybrid

Dokumen ini menguraikan langkah-langkah untuk menghentikan organisasi dari deployment hybrid. Menonaktifkan organisasi berarti menghapus semua data yang terkait dengan organisasi tersebut di seluruh pod Cassandra di semua cluster Kubernetes.

Batasan

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

Dapatkan nama organisasi

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

Untuk mendapatkan nama organisasi yang akan 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 menghentikan organisasi dari deployment hybrid.

  1. Cadangkan organisasi
    1. Jika belum diaktifkan, aktifkan pencadangan pada deployment hybrid. Dalam penyiapan multi-region, gunakan deployment hybrid yang beroperasi di region utama. Lihat Ringkasan pencadangan Cassandra untuk mengetahui 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 petunjuk "Check the status of the backup job" dan petunjuk "Check the backup logs" di Memantau cadangan untuk memverifikasi bahwa pencadangan berhasil.

  2. (Opsional) Jika Anda telah mengonfigurasi Apigee Telemetry (Metrics dan Logger) di organisasi yang akan dihapus, ikuti langkah-langkah berikut untuk mengonfigurasi ulang keduanya sehingga metrik dan data log berlaku untuk org/project baru.
    1. Jalankan perintah ini untuk organisasi tempat Anda ingin mengirim data. Pastikan Anda menggunakan file overrides.yaml untuk organisasi. Misalnya, jika organisasi yang akan dinonaktifkan adalah "test-dev", file overrides.yaml harus berisi kolom org org: test-dev.

      Helm

      helm upgrade telemetry apigee-telemetry/ \
        --namespace apigee \
        --atomic \
        -f OVERRIDES_FILE.yaml
      

      apigeectl

      $APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml --telemetry
    2. Jalankan perintah ini dan pastikan untuk menggunakan org/project yang benar:
      kubectl -n apigee get apigeetelemetry apigee-telemetry -oyaml | grep `gcpProjectID:`
  3. Menghapus resource Kubernetes organisasi dari deployment hybrid.

    Helm

    1. Verifikasi bahwa konteks saat ini adalah konteks yang benar untuk cluster Kubernetes sumber:
      kubectl config current-context

      Jika perlu, tetapkan konteks Kubernetes.

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

      kubectl config get-contexts

      Tetapkan konteks ke cluster dan region yang ingin dinonaktifkan:

      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 org Apigee.
      helm -n apigee delete ORG_NAME
      

    apigeectl

    Pastikan Anda menggunakan file overrides.yaml untuk organisasi. Misalnya, jika organisasi yang akan dinonaktifkan adalah "test-dev", file overrides.yaml harus berisi kolom org org: test-dev.

    Untuk deployment hybrid multi-region, jalankan perintah ini pada setiap deployment hybrid di setiap region.

    kubectl config current-context # Verify the current context is the correct context for the hybrid deployment
    apigeectl check-ready -f overrides.yaml # Check the deployment status
    apigeectl delete --settings virtualhost -f overrides.yaml
    apigeectl check-ready -f overrides.yaml # Check the deployment status
    apigeectl delete --all-envs -f overrides.yaml
    apigeectl check-ready -f overrides.yaml # Check the deployment status
    apigeectl delete --org -f overrides.yaml
    apigeectl check-ready -f overrides.yaml # Check the deployment status
        
  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. Buat pod klien debug Cassandra seperti yang dijelaskan dalam Membuat penampung klien untuk proses debug. Lanjutkan ke langkah berikutnya setelah mendapatkan perintah cqlsh.
    4. Jalankan perintah berikut pada prompt 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. Mulai ulang berkelanjutan semua pod Cassandra. Memulai ulang pod Cassandra dapat dilakukan dalam urutan apa pun selama hanya satu pod Cassandra yang dimulai ulang dalam satu waktu. Untuk deployment multi-region, jalankan 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.