k8s的node节点重启后pod不正常运行

背景

同事在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服务日志

journalctl -xeu kubelet

如果重启systemd不能解决的话,可以根据日志进一步排查问题,万能大法一般是重启。

你可能感兴趣的:(kubernetes,容器,云原生)