Ho provato a eliminare un namespace nel mio cluster Amazon Elastic Kubernetes Service (Amazon EKS). Il namespace è tuttavia bloccato nello stato Terminazione in corso.
Breve descrizione
Per eliminare un namespace, Kubernetes deve prima eliminare tutte le risorse in esso contenute. Quindi, Kubernetes controlla i servizi API registrati per verificare che abbiano rimosso tutti i riferimenti alle risorse nel namespace.
Un namespace potrebbe rimanere bloccato nello stato Terminazione in corso per i seguenti motivi:
- Il namespace contiene risorse che Kubernetes non riesce eliminare a causa dei finalizer.
- Lo stato di un servizio API è False.
Risoluzione
Completa i seguenti passaggi:
-
Per modificare la configurazione del namespace bloccato nello stato Terminazione in corso, esegui questo comando:
kubectl edit namespace TERMINATING_NAMESPACE
Nota: sostituisci TERMINATING_NAMESPACE con il namespace bloccato nello stato Terminazione in corso.
-
Rimuovi le righe che includono i finalizer nella configurazione.
Esempio:
finalizers:
- kubernetes
-
Per applicare le modifiche, salva e chiudi l'editor di testo. Se utilizzi VIM, digita :wq e premi Invio.
-
Per verificare che il namespace nello stato Terminazione in corso sia stato rimosso, esegui questo comando:
kubectl get namespaces
Ripeti i passaggi precedenti per tutti i namespace ancora bloccati nello stato Terminazione in corso.
Informazioni correlate
Namespaces (Namespace) sul sito web Kubernetes
Finalizers (Finalizer) sul sito web Kubernetes