先前使用kubeadm部署了一个kubernetes测试环境,今天看到拉起的pod健康状态很奇怪。
看下这个pod信息:
kubectl describe po -n kube-system calico-node-xh87l
解决:
修改calicao网络插件的网卡发现机制,修改IP_AUTODETECTION_METHOD对应的value值。
官方提供的yaml文件中,ip识别策略(IPDETECTMETHOD)没有配置,即默认为first-found,这会导致一个网络异常的ip作为nodeIP被注册,从而影响node-to-node mesh。
我们可以修改成can-reach或者interface的策略,尝试连接某一个Ready的node的IP,以此选择出正确的IP。
1-修改calico.yaml配置文件,添加属性配置:
2-在master节点重新部署calico,使修改生效:
[root@master01 yam]# kubectl apply -f calico.yaml
[root@master01 yam]# [root@master01 yam]# kubectl apply -f calico.yaml Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply configmap/calico-config configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/bgpconfigurations.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/bgppeers.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/blockaffinities.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/clusterinformations.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/felixconfigurations.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/globalnetworkpolicies.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/globalnetworksets.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/hostendpoints.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/ipamblocks.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/ipamconfigs.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/ipamhandles.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/ippools.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/kubecontrollersconfigurations.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/networkpolicies.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply customresourcedefinition.apiextensions.k8s.io/networksets.crd.projectcalico.org configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply clusterrole.rbac.authorization.k8s.io/calico-kube-controllers configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply clusterrolebinding.rbac.authorization.k8s.io/calico-kube-controllers configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply clusterrole.rbac.authorization.k8s.io/calico-node configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply clusterrolebinding.rbac.authorization.k8s.io/calico-node configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply daemonset.apps/calico-node configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply serviceaccount/calico-node configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply deployment.apps/calico-kube-controllers configured Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply serviceaccount/calico-kube-controllers configured [root@master01 yam]#
3-再看下pod状态:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)