Menonaktifkan org hybrid

Dokumen ini menguraikan langkah-langkah untuk menonaktifkan org dari deployment hybrid. Penghentian layanan organisasi berarti menghapus semua data yang terkait dengan organisasi di semua pod Cassandra di semua cluster Kubernetes.

Batasan

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

Mendapatkan nama organisasi

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

Untuk mendapatkan nama organisasi yang akan digunakan dalam perintah di halaman ini:

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

Petunjuk

Ikuti petunjuk ini untuk menonaktifkan organisasi dari deployment campuran.

  1. Mencadangkan organisasi
    1. Jika belum diaktifkan, aktifkan pencadangan di deployment campuran. Dalam penyiapan multi-region, gunakan deployment campuran yang beroperasi di region utama. Lihat Ringkasan pencadangan Cassandra untuk mengetahui informasi tentang pencadangan campuran.
    2. Memicu tugas pencadangan campuran menggunakan perintah berikut:

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

      BACKUP_JOB_NAME dapat berupa nama penampung yang valid.

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

  2. (Opsional) Jika Anda telah mengonfigurasi Telemetri Apigee (Metrik dan Logger) di organisasi yang akan dihapus, ikuti langkah-langkah berikut untuk mengonfigurasinya ulang sehingga metrik dan data log berlaku untuk organisasi/project baru.
    1. Jalankan perintah ini untuk organisasi tempat Anda ingin mengirim data. Pastikan untuk menggunakan file overrides.yaml untuk organisasi. Misalnya, jika organisasi yang akan dinonaktifkan adalah "test-dev", file overrides.yaml harus berisi kolom organisasi org: test-dev.
      helm upgrade telemetry apigee-telemetry/ \
        --namespace APIGEE_NAMESPACE \
        --atomic \
        -f OVERRIDES_FILE.yaml
      
    2. Jalankan perintah ini, pastikan untuk menggunakan org/project yang benar:
      kubectl -n APIGEE_NAMESPACE 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, tetapkan konteks Kubernetes.

      Cantumkan konteks Anda saat ini untuk melihat nama konteks untuk 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_NAMESPACE delete ENV_GROUP_NAME
      
    3. Hapus lingkungan. Ulangi langkah ini untuk setiap lingkungan:
      helm -n APIGEE_NAMESPACE delete ENV_NAME
      
    4. Hapus organisasi Apigee.
      helm -n APIGEE_NAMESPACE delete ORG_NAME
      
  4. Hapus data organisasi dari deployment campuran. Setelah langkah ini selesai, semua data organisasi akan dihapus dari deployment campuran.
    1. Jalankan ke pod apigee-cassandra-default-0:
      kubectl exec -it -n APIGEE_NAMESPACE apigee-cassandra-default-0 -- /bin/bash
      
    2. Jalankan perintah berikut. Salin daftar semua nama yang ditampilkan dalam 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 mendapatkan petunjuk tentang 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 di 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 KEYSPACE_NAME;

      Keluar dari pod klien debug Cassandra.

    5. Lakukan mulai ulang berkelanjutan pada 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, lakukan mulai ulang bertahap pada semua pod Cassandra di setiap region hybrid.

      Jalankan perintah berikut dan pastikan statusnya menunjukkan "Running":

      kubectl get apigeeds -n APIGEE_NAMESPACE

      Mulai ulang satu pod Cassandra dengan perintah berikut:

      kubectl delete pod -n APIGEE_NAMESPACE CASSANDRA_POD_NAME

      Tunggu hingga pod mencapai status Running menggunakan:

      kubectl get pods -n APIGEE_NAMESPACE

      Mulai ulang pod Cassandra berikutnya.

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

      Lihat Mendapatkan nama organisasi untuk mendapatkan petunjuk tentang 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.