背景
同事在k8s集群中的node3跑算法时候,把node3打崩了,导致kubelet服务不能正常运行和集群通信。
分析&解决
先将node节点打上不可调度标签,然后执行驱逐。
已经看到pod在其他节点创建出来的,但是node3上面的pod仍然处于terminating状态。
刚开始我以为是磁盘io仍然太高,导致它延迟,等同事的算法跑完,磁盘io掉下去之后,仍然处于terminating状态。
查看kubelet日志显示
“failed to activate service 'org.freedesktop.systemd1' timed out’”
systemd服务进程崩溃,sytemd是系统启动之后,进程号pid为1的进程,用来管理其他的进程。
尝试重启systemd进程
systemctl daemon-reexec
问题解决,pod被正常回收。kubelet日志正常
查看kubelet服务日志文章来源:https://www.toymoban.com/news/detail-730145.html
journalctl -xeu kubelet
如果重启systemd不能解决的话,可以根据日志进一步排查问题,万能大法一般是重启。文章来源地址https://www.toymoban.com/news/detail-730145.html
到了这里,关于k8s的node节点重启后pod不正常运行的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!