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:
- Ambil nama org dari file
overrides.yaml
org. - Jika nama organisasi berisi tanda hubung ("-"), ganti dengan garis bawah ("_").
Petunjuk
Ikuti petunjuk berikut untuk menonaktifkan organisasi dari deployment hybrid.
- Cadangkan organisasi
- 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.
- 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.
-
Setelah tugas pencadangan selesai, gunakan "Periksa status tugas pencadangan" dan "Periksa log cadangan" di Memantau pencadangan untuk memverifikasi bahwa pencadangan berhasil.
- (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.
- 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" fileoverrides.yaml
harus berisiorg: test-dev
org.Helm
helm upgrade telemetry apigee-telemetry/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
apigeectl
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml --telemetry
-
Jalankan perintah ini, pastikan untuk menggunakan org/project yang benar:
kubectl -n apigee get apigeetelemetry apigee-telemetry -oyaml | grep `gcpProjectID:`
- Hapus resource Kubernetes organisasi dari deployment hybrid.
Helm
- 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 apigeekubectl config use-context gke_example-org-1_us-west1_example-cluster-2
- Hapus virtualhost.
Ulangi langkah ini untuk setiap grup lingkungan:
helm -n apigee delete ENV_GROUP_NAME
- Hapus lingkungan. Ulangi langkah ini untuk setiap lingkungan:
helm -n apigee delete ENV_NAME
- Hapus organisasi Apigee.
helm -n apigee delete ORG_NAME
apigeectl
Pastikan untuk menggunakan File
overrides.yaml
untuk organisasi. Misalnya, jika organisasi yang akan dinonaktifkan "test-dev" fileoverrides.yaml
harus berisiorg: test-dev
org.Untuk deployment hybrid multi-region, jalankan perintah ini pada setiap deployment hybrid di setiap wilayah.
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
- Pastikan konteks saat ini adalah konteks yang benar untuk cluster Kubernetes sumber:
- Hapus data organisasi dari deployment hybrid. Setelah langkah ini selesai semua data organisasi
akan hilang dari deployment hybrid.
- Eksekusi ke pod
apigee-cassandra-default-0
:kubectl exec -it -n apigee apigee-cassandra-default-0 -- /bin/bash
- 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
. - Membuat pod klien debug Cassandra seperti yang dijelaskan dalam
Buat penampung klien untuk proses debug.
Lanjutkan ke langkah berikutnya setelah mendapatkan perintah
cqlsh
. - 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.
- 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.
- 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 {} +
-
Keluar dari pod Cassandra.
- Eksekusi ke pod