Wie man

Löschen von entfernten/beendeten Pods in Kubernetes erzwingen

Löschen von entfernten/beendeten Pods in Kubernetes erzwingen

In diesem kurzen Tutorial sehen wir uns an, wie Sie entfernte oder beendete Pods in einem Kubernetes-Cluster löschen können. Es gibt viele Gründe, warum Sie einige Pods im Evicted and Terminated State finden. Für die Räumung ist es oft eine Folge von Ressourcendruck in den Worker-Knoten oder Anwendungsfehlern. Die Beendigung kann das Ergebnis des Herunterskalierens einer Anwendung oder der Bereitstellung einer neuen Anwendungsversion sein, bei der alte Pods danach beendet werden.

Der Kubelet-Dienst, der in jedem Knoten im Cluster ausgeführt wird, ist für die Pod-Bereinigung verantwortlich. Die Reihenfolge der Pods-Räumung ist:

Sie können eine Liste der Pods in einem Namespace abrufen, der im Zustand Terminated oder Evicted feststeckt, indem Sie den folgenden Befehl ausführen:

kubectl get pods -n namespace | egrep -i 'Beendet|Ausgewiesen'

Löschen von entfernten/beendeten Pods in Kubernetes erzwingen

Sie können diese Pods auf verschiedene Weise löschen.

Verwenden von nativen kubectl- und Bash-Befehlen

Dies sind Bash-Befehle mit Filterung, die Sie ausführen, um das Löschen von Pods im Namespace zu erzwingen, die im Zustand Evicted oder Terminated feststecken.

# Namespace definieren namespace="mynamespace" # Alle Pods im Zustand Terminated / Evicted abrufen epods=$(kubectl get pods -n $namespace | egrep -i 'Terminated|Evicted' | awk 'print $1 ') # Force Löschen der Pods für i in $epods[@]; do kubectl pod löschen --force=true --wait=false --grace-period=0 $i -n $namespace done 

Bestätigen Sie, ob sich noch Pods in diesem Status befinden.

kubectl get pods -n $namespace | egrep -i 'Beendet|Ausgewiesen'

Löschen aller entfernten und beendeten Pods aus allen Namespaces:

kubectl get pods --all-namespaces | egrep -i 'Ausgewiesen|Beendet' | awk 'print $2 " --namespace=" $1' | xargs kubectl delete pod --force=true --wait=false --grace-period=0

Löschen Sie alle Container im Zustand ImagePullBackOff aus allen Namespaces - Bonus:

kubectl get pods --all-namespaces | grep 'ImagePullBackOff' | awk 'print $2 " --namespace=" $1' | xargs kubectl Pod löschen

Löschen Sie alle Container im Zustand ImagePullBackOff oder ErrImagePull aus allen Namespaces - Bonus -:

kubectl get pods --all-namespaces | grep -E 'ImagePullBackOff|ErrImagePull|Eviced' | awk 'print $2 " --namespace=" $1' | xargs kubectl Pod löschen

Verwenden von kubectl-Filtern und jq

Sie können auch filtern kubectl Befehlsausgabe und Pipe zu jq, um bestimmte Spalten zu erhalten.

Installieren Sie zuerst den jq-Befehl:

--- Ubuntu / Debian --- $ sudo apt update && sudo apt install jq --- CentOS/Fedora --- $ sudo yum -y install epel-release $ sudo yum -y install jq --- RHEL --- wget https: //github.com/stedolan/jq/releases/download/jq-1.6/jq-linux64 -O jq chmod +x jq sudo mv jq /usr/local/bin

Entfernen Sie dann Evicted Pods mit dem Befehl:

kubectl get pods --all-namespaces -o json | jq '.Artikel[] | wählen(.Status.Grund!=null) | wählen(.Status.Grund | enthält("Ausgewiesen")) | "kubectl Pods löschen \(.Metadaten.Name) -n \(.Metadaten.namespace)"' | xargs -n 1 bash -c

Bleiben Sie in Verbindung für weitere interessante Guides zu Containern. Überprüfen Sie auch andere relevante Artikel auf unserer Website.

Installieren Sie Istio Service Mesh im EKS Kubernetes-Cluster

So dekodieren / entschlüsseln Sie das Kubernetes-Geheimnis

So kopieren Sie das Kubernetes-Geheimnis zwischen Namespaces

Kubernetes-Kurse:Kubernetes für absolute Anfänger - Hands-onKubernetes für absolute Anfänger - Hands-on$15.68$156.75auf LagerJETZT KAUFENUdemy.comZertifizierter Kubernetes Administrator (CKA) mit PraxistestsZertifizierter Kubernetes Administrator (CKA) mit Praxistests$15.68$156.75auf LagerJETZT KAUFENUdemy.comKubernetes Certified Application Developer (CKAD) mit TestsKubernetes Certified Application Developer (CKAD) mit Tests$15.68$156.75auf LagerJETZT KAUFENUdemy.com

7 Casino-Filme, die Sie auf Netflix suchen sollten
Ein guter Casinofilm enttäuscht nie mit großer Vorfreude, Nervenkitzel und einer Mischung aus Emotionen, während Vermögen gewonnen und verloren wird. ...
Wie moderne Casinoseiten Sicherheit garantieren
Während Sie sich sicher fühlen können, wenn Sie in ein Casino gehen, können Online-Versionen Ihnen das Gegenteil geben. Da alles digital ist, insbeson...
Datensicherheit und Online-Privatsphäre Warum Gamer die perfekten Ziele sind
Egal, ob Sie Fortnite, WoW, War Hammer oder einfache alte Casino-Slots spielen, online sind immer Risiken im Überfluss vorhanden. Noch vor knapp zwei ...