[kubernates]kube-flannel-ds 一直 CrashLoopBackOff

使用 Kubeadm 安装 K8s 集群,在安装 flannel 网络插件后,发现 kube-flannel-ds 一直处于 CrashLoopBackOff 状态:

[root@test-129-70 k8s]# kubectl get po -A
NAMESPACE     NAME                                  READY   STATUS     		RESTARTS   AGE
kube-system   coredns-6fbb9d899b-qkwd2              0/1     Pending    			0          102s
kube-system   coredns-6fbb9d899b-xswqr              0/1     Pending    			0          102s
kube-system   etcd-test-129-70                      1/1     Running    			0          41s
kube-system   kube-apiserver-test-129-70            1/1     Running    			0          36s
kube-system   kube-controller-manager-test-129-70   1/1     Running    			0          51s
kube-system   kube-flannel-ds-amd64-rp2pd           0/1     CrashLoopBackOff   	0          90s
kube-system   kube-proxy-gjpsz                      1/1     Running    			0          102s
kube-system   kube-scheduler-test-129-70            1/1     Running    			0          60s

使用命令:kubectl -n kube-system logs kube-flannel-ds-amd64-rp2pd 查看日志,发现包含如下错误信息:

Error registering network: failed to acquire lease: node "test-129-70" pod cidr not assigned

则问题是出在默认的网段上,需要判断在 kubeadm init 初始化的时候,是否没有添加 --pod-network-cidr=10.10.0.0./16 参数,这里的 10.10.0.0/16 根据各自的实际情况定义,不冲突就好。

另外:如果使用的是 flannel ,在 apply 前编辑一下 kube-flannel.yml ,在第 128 行:

126   net-conf.json: |
127     {
128       "Network": "10.244.0.0/16",
129       "Backend": {
130         "Type": "vxlan"
131       }
132     }

"Network": "10.244.0.0/16" 的ip段改为初始化时的 10.10.0.0/16 ,否则node之前的 Cluster IP 可能会不通。

你可能感兴趣的:(k8s,kubernates,linux)