Meng-uninstal Anthos Service Mesh
Halaman ini menjelaskan cara meng-uninstal Anthos Service Mesh.
Meng-uninstal Anthos Service Mesh
Gunakan perintah berikut untuk meng-uninstal semua komponen Anthos Service Mesh. Perintah
ini juga menghapus namespace istio-system
dan semua definisi resource
kustom (CRD), termasuk semua CRD yang Anda terapkan.
Untuk mencegah gangguan traffic aplikasi:
- Downgrade kebijakan mTLS STRICT ke PERMISSIF.
- Hapus AuthorizationPolicy yang dapat memblokir traffic.
Nonaktifkan Anthos Service Mesh yang Dikelola Otomatis melalui Fleet API, jika diaktifkan.
Menonaktifkan injeksi otomatis file bantuan di namespace Anda, jika diaktifkan. Jalankan perintah berikut untuk menampilkan label namespace:
kubectl get namespace YOUR_NAMESPACE --show-labels
Outputnya mirip dengan hal berikut ini:
NAME STATUS AGE LABELS demo Active 4d17h istio.io/rev=asm-181-5
Jika Anda melihat
istio.io/rev=
dalam output di bawah kolomLABELS
, hapus kode tersebut:kubectl label namespace YOUR_NAMESPACE istio.io/rev-
Jika Anda melihat
istio-injection
dalam output di bawah kolomLABELS
, hapus kode tersebut:kubectl label namespace YOUR_NAMESPACE istio-injection-
Jika Anda tidak melihat label
istio.io/rev
atauistio-injection
, berarti injeksi otomatis tidak diaktifkan pada namespace.Mulai ulang beban kerja Anda yang telah memasukkan file bantuan untuk menghapus proxy.
Jika Anda menggunakan Anthos Service Mesh terkelola, hapus semua resource
controlplanerevision
di cluster:kubectl delete controlplanerevision RELEASE_CHANNEL -n istio-system
Dengan RELEASE_CHANNEL adalah saluran rilis yang Anda sediakan, seperti
asm-managed
,asm-managed-rapid
, atauasm-managed-stable
.Hapus webhook dari cluster Anda, jika ada.
Mesh Layanan Anthos dalam cluster
Hapus
validatingwebhooksconfiguration
danmutatingwebhookconfiguration
.kubectl delete validatingwebhookconfiguration,mutatingwebhookconfiguration -l operator.istio.io/component=Pilot
Anthos Service Mesh Terkelola
A. Hapus
validatingwebhooksconfiguration
.kubectl delete validatingwebhookconfiguration istiod-istio-system-mcp
B. Hapus
mutatingwebhookconfiguration
.kubectl delete mutatingwebhookconfiguration istiod-RELEASE_CHANNEL
Setelah semua beban kerja muncul dan tidak ada proxy yang diamati, Anda dapat menghapus bidang kontrol dalam cluster dengan aman untuk menghentikan penagihan. Jika Anda men-deploy bidang kontrol terkelola, bidang tersebut akan otomatis dihapus dengan langkah sebelumnya.
Untuk menghapus bidang kontrol dalam cluster, jalankan perintah di bawah:
istioctl x uninstall --purge
Jika tidak ada bidang kontrol lain, Anda dapat menghapus namespace
istio-system
untuk menghapus semua resource Anthos Service Mesh. Jika tidak, hapus layanan yang sesuai dengan revisi Anthos Service Mesh. Tindakan ini akan menghindari penghapusan resource bersama, seperti CRD.Hapus namespace
istio-system
danasm-system
:kubectl delete namespace istio-system asm-system --ignore-not-found=true
Periksa apakah penghapusan berhasil:
kubectl get ns
Output harus menunjukkan status
Terminating
dan menampilkan seperti yang ditunjukkan. Jika tidak, Anda mungkin harus menghapus resource yang tersisa di dalam namespace secara manual dan mencoba lagi.NAME STATUS AGE istio-system Terminating 71m asm-system Terminating 71m
- Jika Anda akan menghapus cluster atau telah menghapusnya, pastikan setiap cluster tidak terdaftar dari fleet Anda.
Jika Anda menggunakan Anthos Service Mesh terkelola, hapus deployment
mdp-controller
:kubectl delete deployment mdp-controller -n kube-system
Hapus daemonset
istio-cni-node
:kubectl delete daemonset istio-cni-node -n kube-system