问题描述
-
问题现象 : 节点状态显示
NotReady
-
错误日志: kubelet 持续输出网络相关错误
E0927 09:12:45.858367 53283 kubelet.go:2909] "Container runtime network not ready"
networkReady="NetworkReady=false reason:NetworkPluginNotReady message:Network plugin returns error: cni plugin not initialized"
排查过程
相关组件
bash
kubectl get pods -n kube-flannel -o wide
kubectl get daemonset -n kube-flannel
kubectl logs -n kube-flannel kube-flannel-ds-qg7pp
flannel 相关的 pod 都很正常可以进行下一步检查
相关配置
bash
ls -la /etc/cni/net.d/
cat /etc/cni/net.d/10-flannel.conflist
ls -la /opt/cni/bin/
ls -al /usr/lib/cni/
检查cni配置和cni的二进制文件,发现也都没有缺少什么,下一步检查
验证 cri
bash
crictl info | grep -A 5 -B 5 network
json
"lastCNILoadStatus": "cni config load failed: no network config found in /etc/cni/net.d: cni plugin not initialized"
发现cri存在错误日志,但是我们上面已经检查了 /etc/cni/net.d
是有 cni 配置的,既然找不到,那就重启一下 containerd(我使用的是 containerd)
bash
systemctl restart containerd
systemctl restart kubelet
重启之后等运行完毕,也需要重启 kubelet。
验证结果
NAME STATUS ROLES AGE VERSION
edge-node1 Ready <none> 14m v1.30.3
master-node1 Ready control-plane 14h v1.30.3