某个早上,本人刚打开电脑测试就开始找上了我。啊!!!测试环境的k8s启动不了了!!!作为一个成天摸鱼哦不!!努力工作的小姑娘。本着助人为乐的原则,我决定要发挥一下我的作用~今天就要去测试环境给他搞好!!!
好了回到正题,首先第一步我们应该干啥?当然是确认k8s的状态。
1、查看k8s状态 systemctl status kubelet

看到k8s确实是启动失败了,但是这里并没有什么关键信息能让我们知道启动失败的原因。
2、查看k8s日志 journalctl -xefu kubelet
在这里插入图片描述

日志有一大堆但是关键信息就这一句~kubelet cgroup driver: “systemd” is different from docker cgroup driver: “cgroupfs” 大概意思就是kubelet cgroup driver跟docker cgroup driver的值不一致导致的启动失败。知道了原因就好办了。
解决方案:
1、查看k8s cgroup: cat /var/lib/kubelet/kubeadm-flags.env
在这里插入图片描述

2、查看docker cgroup: docker info

在这里插入图片描述
3、编辑kubeadm-flags.env的cgroup值 修改为docker一样的值
vi /var/lib/kubelet/kubeadm-flags.env
在这里插入图片描述
4、刷新配置再重启
systemctl daemon-reload
systemctl restart kubelet
5、再次验证k8s状态
在这里插入图片描述
如图所示可以看到k8s已经成功启动。我们可以再执行一下kubectl命令验证k8s是否正常工作

查看pod: kubectl get po :
在这里插入图片描述

可以看到k8s已经恢复正常了。

Logo

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

更多推荐