networkPlugin cni未能在Kubernetes部署时设置pod问题
我正在尝试将示例Spring Boot micro服务部署到Kubernetes集群中。我的每个节点都显示就绪状态。当我试图部署时,我的pod只显示networkPlugin cni未能在Kubernetes部署时设置pod问题,kubernetes,weave,Kubernetes,Weave,我正在尝试将示例Spring Boot micro服务部署到Kubernetes集群中。我的每个节点都显示就绪状态。当我试图部署时,我的pod只显示ContainerCreating 当我描述pod时,我得到的信息是,networkPlugin cni未能设置pod,网络无法分配IP地址 我的pod描述如下所示的命令结果: Events: Type Reason Age From
ContainerCreating
当我描述pod时,我得到的信息是,networkPlugin cni未能设置pod,网络无法分配IP地址
我的pod描述如下所示的命令结果:
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled <unknown> default-scheduler Successfully assigned
default/spacestudysecurityauthcontrol-deployment-57596f4795-jxxvj to mildevkub040
Warning FailedCreatePodSandBox 53m kubelet, mildevkub040 Failed to create pod sandbox: rpc error: code = Unknown desc = [failed to set up sandbox container "2499f91b4a1173fb854a47ba1910d1fc3f18cfb35bf5c38c9a3008e19d385e15" network for pod "spacestudysecurityauthcontrol-deployment-57596f4795-jxxvj": networkPlugin cni failed to set up pod "spacestudysecurityauthcontrol-deployment-57596f4795-jxxvj_default" network: unable to allocate IP address: Post http://127.0.0.1:6784/ip/2499f91b4a1173fb854a47ba1910d1fc3f18cfb35bf5c38c9a3008e19d385e15: dial tcp 127.0.0.1:6784: connect: connection refused, failed to clean up sandbox container "2499f91b4a1173fb854a47ba1910d1fc3f18cfb35bf5c38c9a3008e19d385e15" network for pod "spacestudysecurityauthcontrol-deployment-57596f4795-jxxvj": networkPlugin cni failed to teardown pod "spacestudysecurityauthcontrol-deployment-57596f4795-jxxvj_default" network: Delete http://127.0.0.1:6784/ip/2499f91b4a1173fb854a47ba1910d1fc3f18cfb35bf5c38c9a3008e19d385e15: dial tcp 127.0.0.1:6784: connect: connection refused]
Normal SandboxChanged 3m40s (x228 over 53m) kubelet, mildevkub040 Pod sandbox changed, it will be killed and re-created.
当我运行命令kubectl exec-n kube system weave-net-fj9mm-c weave--/home/weave/weave--local status ipam
时,我得到的响应类似于“Error from server(NotFound):pods”weave-net-fj9mm“NotFound”
如何解决此问题?出现在pod description
命令中的url,如果您将其卷曲。你会得到这样的东西
# curl 'http://127.0.0.1:6784/status'
Version: 1.8.2 (version 1.9.1 available - please upgrade!)
Service: router
Protocol: weave 1..2
Name: 66:2b:6a:ca:34:88(ip-10-128-152-185)
Encryption: disabled
PeerDiscovery: enabled
Targets: 4
Connections: 4 (3 established, 1 failed)
Peers: 4 (with 12 established connections)
TrustedSubnets: none
Service: ipam
Status: waiting for IP range grant from peers
Range: 10.32.0.0/12
DefaultSubnet: 10.32.0.0/12
“等待来自对等方的IP范围授权”状态表示Weave Net的IPAM认为所有IP地址空间都属于集群中的其他节点,但实际上目前无法联系到这些节点
这是解决办法。红色大警告:
- 所有无法访问的主机首先被标识为永远消失李>
- 不要在多个节点上运行此操作李>
- 如果出现问题,这可能会破坏kubernetes群集李>
- 如果您没有阅读上述警告,则会在命令中添加故障保护“echo”
参考文献-
您在集群中使用的CNI插件是什么?其他部署是否可以运行?您使用的网络插件是什么?如何设置集群?设置群集时指定的pod cidr是什么。@我使用的是ArghyaSadhu-weave。我用kubeadm工具设置了集群。这个错误现在才发生。以前,每个服务都已成功部署。@Matt-我已经习惯了。每个部署都显示相同的状态。这只发生在现在。在此之前,我已成功部署。将运行weave kube映像的容器中的日志发布到计划pod的节点上。还有该节点的kubelet日志。
# curl 'http://127.0.0.1:6784/status'
Version: 1.8.2 (version 1.9.1 available - please upgrade!)
Service: router
Protocol: weave 1..2
Name: 66:2b:6a:ca:34:88(ip-10-128-152-185)
Encryption: disabled
PeerDiscovery: enabled
Targets: 4
Connections: 4 (3 established, 1 failed)
Peers: 4 (with 12 established connections)
TrustedSubnets: none
Service: ipam
Status: waiting for IP range grant from peers
Range: 10.32.0.0/12
DefaultSubnet: 10.32.0.0/12
% for i in $(curl -s 'http://127.0.0.1:6784/status/ipam' | grep 'unreachable\!$' | sort -k2 -n -r | awk -F'(' '{print $2}' | sed 's/).*//'); do echo curl -X DELETE 127.0.0.1:6784/peer/$i; done
65536 IPs taken over from ip-10-128-184-15
32768 IPs taken over from ip-10-128-159-154
32768 IPs taken over from ip-10-128-170-84