您的位置 首页 kubesphere

排障 cni,calico

 

k8s  新增节点后, 出现 创建pod 错误。(重启 calico  后, 一晚上后就恢复了。)

我上午新增的节点,下午创建服务就出问题。

cni的作用就像树的树叉,pod就是叶子,如果他出现了问题那么新创建的pod就会因为它而无法分配连接点导致错误挂不上网络。以有的calico会同步的,别的节点依然能通过网络顺利访问异常节点的pod

 

Failed to create pod sandbox: rpc error: code = Unknown desc = failed to set up sandbox container

大概率cni服务不可用力 重启一下就完了

 

如何重启cni

用admin  登录, 找到  工作负载-》 搜索 calico

 

devops 依然有问题:

我的建议是停止调度,驱逐pod,然后重启云主机,让calico彻底刷新一次看看

如何停止调度呢?

	error killing pod: failed to "KillPodSandbox" for "10c10984-2cce-4415-b58a-c71380af0bbc" with KillPodSandboxError: "rpc error: code = Unknown desc = networkPlugin cni failed to teardown pod \"devops-28366650-mnzlp_kubesphere-devops-system\" network: Get \"https://10.233.0.1:443/apis/crd.projectcalico.org/v1/ipamhandles/k8s-pod-network.436836bd0c6ca83c3294935108768366567d749b2e23ab821814f85586477f06\": dial tcp 10.233.0.1:443: i/o timeout"

 

admin 》主页》侧边栏》节点》集群节点》具体的节点》

 

 

然后去看当前节点的pod有没有都被踢出去

calico 有 污点容忍, 踢不走, 无所谓了。

业务容器和其他的容器被踢走就行

如果都没问题了,那么就去那个节点上重启云主机吧

在work3节点

先停止kubelet,再删掉所有pod

systemctl stop kubelet

docker rm -f `docker ps -qa`

 

这个时候calico就会重新初始化网络之类的,或许能解决问题

kubelet会开启自动启动的

 

问题依然没解决

/etc/cni/net.d

 

/var/log/calico/cni/cni.log

 

看日志

2023-12-08 11:25:15.427 [ERROR][28707] ipam_plugin.go 425: Failed to release address ContainerID="597adefc5a8fe9ab202bfa666268368bc7c3a32bb073136e070ed34052c9d6a8" HandleID="k8s-pod-network.597adefc5a8fe9ab202bfa666268368bc7c3a32bb073136e070ed34052c9d6a8" Workload="worker3-k8s-restic--x88nm-eth0" error=Get "https://10.233.0.1:443/apis/crd.projectcalico.org/v1/ipamhandles/k8s-pod-network.597adefc5a8fe9ab202bfa666268368bc7c3a32bb073136e070ed34052c9d6a8": dial tcp 10.233.0.1:443: i/o timeout
2023-12-08 11:25:15.428 [ERROR][28694] utils.go 253: Get "https://10.233.0.1:443/apis/crd.projectcalico.org/v1/ipamhandles/k8s-pod-network.597adefc5a8fe9ab202bfa666268368bc7c3a32bb073136e070ed34052c9d6a8": dial tcp 10.233.0.1:443: i/o timeout ContainerID="597adefc5a8fe9ab202bfa666268368bc7c3a32bb073136e070ed34052c9d6a8"
2023-12-08 11:25:15.429 [ERROR][28694] plugin.go 577: Final result of CNI DEL was an error. error=Get "https://10.233.0.1:443/apis/crd.projectcalico.org/v1/ipamhandles/k8s-pod-network.597adefc5a8fe9ab202bfa666268368bc7c3a32bb073136e070ed34052c9d6a8": dial tcp 10.233.0.1:443: i/o timeout

 

 

/etc/cni/net.d/calico-kubeconfig

问题解决:

把/etc/cni/net.d/calico-kubeconfig 文件 从 别的正常的节点 复制到 到有问题的节点

Pods not coming up instantaneously. CNI issues troubling the startup · Issue #5684 · projectcalico/calico (github.com)

 

 

但是还是有问题的,

只能更换一个节点,测试一下,

又新加了一个 worker4 ,发现没有出问题。 2023年12月8日

这真是奇葩的问题。

可能是 跟这个免费安全加固 有关 , work4 是没有加的, worker3(出问题的) 应该是默认勾选的。  worker2,worker1 我记得是没有勾选的。

欢迎来撩 : 汇总all

白眉大叔

关于白眉大叔linux云计算: 白眉大叔

热门文章