Pod状态异常的排查思路
在这里插入图片描述

在创建pod的时候就出现了错误,之前运行的一直好好的,那么可能是docker出现了问题,结合报错信息mountpoint for devices not found,结合百度看了一下,推测可能是因为cgroup问题
在这里插入图片描述

既然推测docker问题,那么这些pod可能在一台节点上,也果然和推测符合预期,全部都集中在node1节点
在这里插入图片描述

那么既然是docker出了问题,kubelet依赖docker才可以正常启动,在此之前我可能对kubelet,docker进行了重启,分别看一下docker和kubelet的状态,已经无法正常启动了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
df -hT 发现cgroup已经挂载了,重启了服务器解决了

但是这里有一个问题 kubelet服务异常退出,无论是停掉docker还是kubelet其解决都会因为kubelet异常无法给apiserver进行通信,造成节点是notready的状态,那这里明明kubelet服务已经异常退出了但是我当时从master看节点状态确实ready,如果说我在此之前对kubelet和docker进行了重启,我查看node节点的状态且在重启前,那么可能kubelet不会发送cgroup的信息,并且kubelet进程并没有退出,正常给apiserver发送节点信息,那么这一切就是符合预期的。

之后我进行了一下复现,直接将cgroup的挂载给卸载掉,这个时候看kubelet状态和docker状态都是正常的,如果看日志会有cgroup报错,那么按照推理就是符合预期的,也就是kubelet不会发送cgroup的信息,但其实cgroup并不会导致docker服务和kubelet服务异常。
在这里插入图片描述
在这里插入图片描述

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐