错误现象
runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized

解决方式
仅就今天遇到的情况给出解决方法,基于v1.21.1版本,已安装weave,发现仍有以上错误。

我发现 /opt/cni/bin 目录下缺少很多可执行文件,处理方式是重新安装kubernetes-cni

yum install -y kubernetes-cni

重启containerd后生效 systemctl restart containerd.service

ps:看到有的博主使用单节点k8s,不想看NOT READY状态,把 /var/lib/kubelet/kubeadm-flags.env 或 /etc/systemd/system/kubelet.service.d/10-kubeadm.conf 下的 --network-plugin=cni 给去掉了。

略作解释
kubelet配置 --network-plugin=cni,仅当CNI(容器网络插件)正确安装后才会改变状态为 READY。

上文出现的情况原因就是缺少CNI可执行文件,导致CNI初始化失败。

Logo

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

更多推荐