Disinstalla Cloud Service Mesh
In questa pagina viene spiegato come disinstallare Cloud Service Mesh.
Disinstalla Cloud Service Mesh
Utilizza i comandi seguenti per disinstallare tutti i componenti di Cloud Service Mesh. Questi comandi eliminano anche lo spazio dei nomi istio-system
e tutte le definizioni di risorse personalizzate (CRD), inclusi eventuali CRD applicati.
Per evitare interruzioni del traffico delle applicazioni:
- Esegui il downgrade di qualsiasi criterio mTLS STRICT a PERMISSIVE.
- Rimuovi qualsiasi AuthorizationPolicy che potrebbe bloccare il traffico.
Disabilita Automatic Managed Cloud Service Mesh tramite l'API Fleet, se è abilitato.
Disabilita l'inserimento automatico dei file collaterali negli spazi dei nomi, se è abilitata. Esegui questo comando per visualizzare le etichette dello spazio dei nomi:
kubectl get namespace YOUR_NAMESPACE --show-labels
L'output è simile al seguente:
NAME STATUS AGE LABELS demo Active 4d17h istio.io/rev=asm-181-5
Se vedi
istio.io/rev=
nell'output sotto la colonnaLABELS
, rimuovilo:kubectl label namespace YOUR_NAMESPACE istio.io/rev-
Se vedi
istio-injection
nell'output sotto la colonnaLABELS
, rimuovilo:kubectl label namespace YOUR_NAMESPACE istio-injection-
Se non vedi le etichette
istio.io/rev
oistio-injection
, l'inserimento automatico non è stato abilitato nello spazio dei nomi.Riavvia i carichi di lavoro con sidecar inseriti per rimuovere i proxy.
Se utilizzi Cloud Service Mesh gestito, rimuovi tutte le risorse
controlplanerevision
nel cluster:kubectl delete controlplanerevision RELEASE_CHANNEL -n istio-system
dove RELEASE_CHANNEL è il canale di rilascio di cui hai eseguito il provisioning, ad esempio
asm-managed
,asm-managed-rapid
oasm-managed-stable
.Elimina i webhook dal cluster, se presenti.
Cloud Service Mesh nel cluster
Elimina
validatingwebhooksconfiguration
emutatingwebhookconfiguration
.kubectl delete validatingwebhookconfiguration,mutatingwebhookconfiguration -l operator.istio.io/component=Pilot
Mesh di servizi cloud gestito
A. Elimina
validatingwebhooksconfiguration
.kubectl delete validatingwebhookconfiguration istiod-istio-system-mcp
B. Elimina
mutatingwebhookconfiguration
.kubectl delete mutatingwebhookconfiguration istiod-RELEASE_CHANNEL
Quando vengono visualizzati tutti i carichi di lavoro e non viene osservato alcun proxy, puoi eliminare in sicurezza il piano di controllo nel cluster per interrompere la fatturazione. Se hai eseguito il deployment di un piano di controllo gestito, questo viene automaticamente eliminato con il passaggio precedente.
Per rimuovere il piano di controllo nel cluster, esegui questo comando:
istioctl x uninstall --purge
Se non esistono altri piani di controllo, puoi eliminare lo spazio dei nomi
istio-system
per eliminare tutte le risorse Cloud Service Mesh. In caso contrario, elimina i servizi corrispondenti alle revisioni di Cloud Service Mesh. In questo modo si evita l'eliminazione delle risorse condivise, come i CRD.Elimina gli spazi dei nomi
istio-system
easm-system
:kubectl delete namespace istio-system asm-system --ignore-not-found=true
Controlla se le eliminazioni sono riuscite:
kubectl get ns
L'output dovrebbe indicare uno stato
Terminating
e restituire come mostrato, altrimenti potresti dover eliminare manualmente le risorse rimanenti negli spazi dei nomi e riprovare.NAME STATUS AGE istio-system Terminating 71m asm-system Terminating 71m
- Se elimini i cluster o li hai già eliminati, assicurati che ogni cluster non sia registrato nel parco risorse.
Se utilizzi Cloud Service Mesh gestito, elimina il deployment
mdp-controller
:kubectl delete deployment mdp-controller -n kube-system
Elimina il daemonset
istio-cni-node
:kubectl delete daemonset istio-cni-node -n kube-system