过程:
- 起因,K8S系统装完以后,准备装OpenEBS之前,发现系统没有附加盘,又找相关部门的人给机器加了新的硬盘,加完硬盘安装完OpenEBS,发现有一个节点没有NDM,查看节点状态,发现NotReady
- 看了相关文档,在节点上首先用docker指令试了一下,发现Docker服务没起来
- 用dockerd指令手动启动,发现一个错误:mkdir /var/lib/docker/runtimes 失败,runtimes是文件
- 到相关目录下一看,runtimes是一个json文件,mv文件备份,然后重新启动,成功。
- 于是systemctl启动Docker服务
- 用 journalctl -f -u kubelet 日志,整个节点逐步恢复正常
结论:
- 节点上主要本地服务是Kubelet和Docker运行时,所以节点启动不成功,可能是这两个的问题
- 其实上面的过程有跳跃,第二步应该先诊断kubelet服务,因为看了其它文档,这步被直接跳过
- 用手动启动打开日志诊断这个方法很重要
- 别人的经验很重要,但极大可能不能完全照搬,需要自己的分析过程。
参考文档:
https://blog.csdn.net/qq_21816375/article/details/80222689
https://blog.csdn.net/u010918487/article/details/106925282