Hallo @Anonymous
Um die von NodeProblemDetector gemeldete KernelDeadlock-Bedingung zu untersuchen:
SSH in den betroffenen Knoten:
Bash
kubectl debug node/<node-name> -it --image=ubuntu
Oder, wenn Sie direkten Zugang haben:
Bash
ssh <node-user>@<node-ip>
Überprüfen Sie Systemprotokolle:
Kernel-Ringpuffer:
Bash
dmesg -T | weniger
Systemd journal:
Bash
journalctl -k -xe
Achten Sie auf Nachrichten wie hung_task, Soft Lockup oder Blockierung von mehr als 120 Sekunden.
Korrelation mit Kubelet-Protokollen:
Bash
journalctl -u kubelet -xe
Das hilft zu bestätigen, ob Pod-Räumungen direkt mit Kernel-Ställen zusammenhängen.
Kontrolliertes Knotendrainageverfahren
Um Workloads sicher aus dem problematischen Knoten zu entfernen:
Markiere den Knoten als nicht planbar:
Bash
Kubeckl-Kordon <node-name>
Das verhindert, dass dort neue Pods geplant werden.
Lassen Sie den Knoten elegant entleeren:
Bash
kubectl drain <node-name> --ignore-daemonsets --delete-emptydir-data
--ignore-daemonsets: Behält systemkritische Pods (wie Logging-/Monitoring-Agenten).
--delete-emptydir-data: Stellt sicher, dass Pods mit ephemeralem Speicher sauber entfernt werden.
Überprüfen Sie, ob die Arbeitsbelastungen woanders verschoben werden:
Bash
kubectl bekommt Pods -o breit
Bestätigen Sie, dass die Pods auf gesunden Knoten laufen.
Wenn Sie diese Informationen hilfreich finden, klicken Sie bitte auf Antwort akzeptieren. Dadurch können andere Community-Mitglieder hilfreiche Lösungen für ähnliche Probleme finden.
Vielen Dank.