Kubectl Force Pod löschen

Kubectl Force Pod löschen
Wenn Sie die Kubectl -Befehle verwenden, ist das Entfernen eines Schoten. Unabhängig davon. Bevor Sie jedoch einen Pod löschen, sollten Sie jedoch eine Reihe von Schritten durchführen, um sicherzustellen, dass die Anwendung reibungslos ausgeführt wird.

In diesem Artikel werden wir diese Schritte diskutieren. Denken Sie jedoch daran, dass das Steilen dieses Prozesses zu Fehlern und Ausfallzeiten für Anwendungen führen kann. Lassen Sie uns nun das Thema im Detail diskutieren.

So löschen Sie Kubernetes -Schoten auf einfachste Weise?

Sie müssen zuerst die Pods auflisten, um den Beitrag auf die effizienteste Weise zu löschen. Sie können dies tun, wenn Sie den unten angegebenen Befehl Get Pods verwenden.

$ kubectl bekommen Pods -o breit

Hier können Sie sehen, dass der Befehl Get Pods die Pods mit Details aufgelistet hat.

Wenn wir nun den "Pod-Drei" -Pod löschen. Geben Sie den folgenden Befehl ein:

$ Kubectl löschen pod pod-drei

Der obige Befehl, in dem wir den Namen des Pod (Pod-Drei) angegeben haben, hat den Pod erfolgreich gelöscht.

$ kubectl bekommen Pods -o breit

Durch die Auflistung aller Schoten können Sie bestätigen, dass der fragliche gelöscht wurde.

Wie Sie auf dem oben angebotenen Bild überprüfen können, gibt es kein Pod-Drei.''

So erzwingen Sie, Kubernetes -Pods zu löschen?

Warum eine Erkrankung der Pod -Deletion erforderlich ist? Nach einer Auszeit kann der Pod in einem terminierenden/unbekannten Zustand auf einem nicht erreichbaren Knoten stecken bleiben. Diese Status können auch auftreten, wenn ein Benutzer versucht, einen Schoten aus einem unzugänglichen Knoten anmutig zu löschen. In einigen Situationen dürfen Sie den Pod zwangs entfernen/löschen.

Ob eine Kraft -Löschung bei der Zerstörung eines Pod wirksam ist oder nicht. Dies würde es dem staatlichen Controller ermöglichen, einen Ersatzkapsel mit derselben Identität zu erstellen. Dies könnte bei der Duplikation eines bereits laufenden Pods führen, der, wenn dieser Pod weiterhin mit anderen staatlichen Mitgliedern interagieren kann.

Manuelle Kraft -Löschung muss sorgfältig angewendet werden. Statefulsets können verwendet werden, um verteilte und gruppierte Anwendungen auszuführen, die eine konsistente Netzwerkidentität und einen anhaltenden Speicher benötigen.

Die Konfiguration dieser Apps basiert häufig auf einem Ensemble, das eine festgelegte Anzahl von Mitgliedern mit festen Identitäten umfasst. Mehrere Mitglieder, die dieselbe Identität teilen.

Wenn Sie einen staatlichen Pod mit Gewalt löschen, stellen Sie sicher, dass sie niemals mehr mit anderen Schoten im staatlichen Verfahren kommuniziert und dass seine Identität für einen Ersatz sicher freigelassen werden kann.

Befolgen Sie diese Verfahren, um eine Pod mit Kubectl> = 1 zwangs zu zerstören.5:

$ kubectl löschen Pods Name-of-Pod-Grace-period = 0-Force

Wenn Sie Kubectl> = 1 verwenden.4, Sie können das Argument des Force überspringen und stattdessen verwenden:

$ kubectl lösche Pods Name-of-Pod-Grace-period = 0

Löschen Sie nun den oben genannten Weg den Pod "Pod-Two":

$ kubectl delete pod pod-two-Force-grace-period = 0 --Namespace = Standard

Hier ist das Ergebnis des obigen Befehls bei der Ausführung.

Bitte beachten Sie, dass Force Pod -Deletionen nicht auf Kuberet -Bestätigung beruhen, dass der Pod beendet wurde.

Wenn der Pod nach dem Ausführen dieser Befehle im unbekannten Status bleibt, verwenden Sie den folgenden Befehl, um ihn aus dem Cluster zu entfernen:

$ kubectl patch pod pod -two -p '"metadata": "Finalizers": null'

Überprüfen Sie, ob der Pod entfernt wurde.

So entfernen Sie Pods auf einmal von einem Knoten?

Wenn Ihr Knoten nicht wesentliche Schoten oder staatliche Pods hat, können Sie den Befehl kubectl drainieren. In diesem Schritt werden alle Schoten aus dem Knoten entfernt. Überprüfen Sie vor dem Fortschritt die Identität des von Ihnen gelöschten Knotens und stellen Sie sicher, dass die Pods an einem bestimmten Knoten sicher beendet werden können. Die Aufgabe wird für Sie mit der folgenden Anweisung erledigt.

$ kubectl Holen Sie sich Knoten

Verwenden Sie nach dem Befehl GET POD den folgenden folgenden Befehl.

Versuchen Sie dann die folgende zitierte Anweisung, alle Pods abzulassen.

$ kubectl Drain

Um sicherzustellen, dass noch keine Schoten auf dem Knoten arbeiten, führen Sie den Befehl get Pods erneut aus. Wenn Sie Noexecute zum Ausführen von Schoten verwenden, befinden sie sich immer noch auf dem Knoten.

Führen Sie den Drain -Befehl noch einmal aus. Aber diesmal sollte die Flagge -Flagge enthalten sein. Dadurch wird alle Schoten aus dem Knoten beseitigt. Verwenden Sie schließlich den Befehl kubectl delete node, um den Knoten aus dem entsprechenden Cluster zu löschen.

So lassen Sie Pods wieder auf Knoten?

Verwenden Sie den Befehl kubectl unkordon, sobald Sie die Wartung auf einem Knoten mit der Durchführung von Kubectl Uncordon fertiggestellt haben. Wenn Pods dann zur Planung zur Verfügung stehen, werden sie auf diesem Knoten wieder auftauchen.

$ kubectl unkordon docker-desktop

Wenn Sie einen neukordinierten Knoten oder einen neuen Knoten in Ihrem Cluster haben, kann es ein Problem sein, bestimmte Pods zu balancieren. Obwohl es am besten ist, die Kubernetes -Scheduler -Pods nach Bedarf zuweisen, wenn Sie Ihre Bereitstellung/StatefulSet ändern, können Sie den Prozess erzwingen, indem Sie Pods entfernen und an anderer Stelle einige der früheren Phasen einsetzen.

Abschluss

Möglicherweise müssen Sie einen einzelnen Schoten oder mehrere Schoten von einem Ihrer Knoten löschen, wenn Sie Ihren Kubernetes -Cluster ausführen. Es besteht die Möglichkeit, dass Sie möglicherweise Node -Schwierigkeiten beheben, einen bestimmten Knoten aktualisieren oder Ihren Cluster skalieren müssen. Obwohl das Löschen von Schoten oder Schoten von einem Knoten nicht sehr schwierig ist, gibt es einige Tipps und Techniken, die Sie befolgen sollten, um sicherzustellen, dass Ihre Anwendung/Ihr Programm nicht gestört ist. Darüber haben wir in diesem Artikel gesprochen und erweitert. Stellen Sie vor der Ausführung von Anweisungen sicher, dass Sie jeden Schritt gründlich gelesen und verstehen, um Fehler zu machen, die zu Ausfallzeiten führen können.