k8s部署成功后却显示结点一直处于NotReady状态解决方案

直接说结论:原因是服务器的/opt/cni/bin/目录中没有flannel插件,安装flannel 到/opt/cni/bin/目录下即可。具体步骤往下看。

[root@K8SMaster ~]# journalctl -f -u kubelet.service 
先看下报错,发现我一直显示NotReady的原因是由于

[failed to find plugin "flannel" in path [/opt/cni/bin]]

因此,安装flannel 到/opt/cni/bin/目录下即可

去github找到插件

Release CNI plugins v0.8.6 · containernetworking/plugins · GitHub

k8s部署成功后却显示结点一直处于NotReady状态解决方案_第1张图片

 下载好后上传到服务器然后解压

[root@K8SMaster ~]# tar -xvf cni-plugins-linux-amd64-v0.8.6.tgz 

k8s部署成功后却显示结点一直处于NotReady状态解决方案_第2张图片

 得到flannel插件后将其复制到/opt/cni/bin/目录下后重新 运行kubectl apply -f kube-flannel.yml即可解决结点状态为NotFound的问题。

k8s部署成功后却显示结点一直处于NotReady状态解决方案_第3张图片

 剩下的两个结点服务器也是因为/opt/cni/bin/目录中没有flannel插件,按照上面的操作将flannel插件安装到/opt/cni/bin/目录下即可。

k8s部署成功后却显示结点一直处于NotReady状态解决方案_第4张图片

 最后的碎碎念:我是真的服了,查了一晚上,基本全都是一些毫无价值的东西,一个有用的都没有,我还一直以为是老师的给的那个kube-flannel.yml有问题,原来根本不是那个文件的问题。我这篇文章应该是第一个摸索出解决方法的,由于搞了太久,因此只能简单的将博客写下来,但是基本的解决思路和方法都写清楚了,希望能帮大家少走些坑。

k8s部署成功后却显示结点一直处于NotReady状态解决方案_第5张图片

你可能感兴趣的:(java,Linux)