码迷,mamicode.com
首页 > Web开发 > 详细

[转帖]k8s集群node节点一直NotReady, 且node节点(并非master)的kubelet报错:Unable to update cni config: No networks found in /etc/cni/net.d

时间:2020-01-17 11:59:57      阅读:261      评论:0      收藏:0      [点我收藏+]

标签:pid   master   yaml   命令   复制   删除   list   image   nod   

k8s集群node节点一直NotReady, 且node节点(并非master)的kubelet报错:Unable to update cni config: No networks found in /etc/cni/net.d

集群搭建的过程中,master节点初始化成功,但 node节点加入集群时却一直显示NotReady状态,如下:

技术图片

使用kubeclt describe node xxxx 命令,发现报错:

KubeletNotReady runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized

进入node节点,执行 systemctl status kubelet 和 journalctl -xeu kubelet 命令,发现报错:

Unable to update cni config: No networks found in /etc/cni/net.d

原因:

该错误意思是 CNI插件还未安装,所以状态会是NotReady。

解决:

方法一:

? 编辑 /etc/systemd/system/kubelet.service.d/10-kubeadm.conf文件(有的是/usr/lib/systemd/system/kubelet.service.d/10-kubeadm.conf文件),
? 删除最后一行里的$KUBELET_NETWORK_ARGS 即可。
? (该方法治标不治本,没能解决我的问题)

方法二:

? 考虑到node节点的kubelet报错Unable to update cni config: No networks found in /etc/cni/net.d,并且master节点的/etc/cni/net.d目录里拥有10-flannel.conflist文件,
? 我们可以把该文件从master节点复制到node节点的对应目录中,然后重启kubelet服务即可。
? (该方法亡羊补牢,对我的问题也没用)

方法三:

? 注意到master节点的/etc/cni/net.d/10-flannel.conflist文件是经过 安装flannel插件 才生成的,而node节点则是在master节点安装完flannel插件后才加入集群的, ? 所以,我们不妨 先加入node节点,再执行 flannel插件的安装。 ? (该方法有取巧的嫌疑,但解决了我的问题)

[转帖]k8s集群node节点一直NotReady, 且node节点(并非master)的kubelet报错:Unable to update cni config: No networks found in /etc/cni/net.d

标签:pid   master   yaml   命令   复制   删除   list   image   nod   

原文地址:https://www.cnblogs.com/jinanxiaolaohu/p/12204861.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!