在使用kubernetes的时候,node的取名也是非常讲究的,但有时候,需要删除节点重新加入的时候,会发现Pod可以被调度过去,但是Pod会一直处于ContainertCreating状态,查看pods的秒速发现是cni网络的问题。
failed to set bridge addr: "cni0" already has an IP address different from
网上的教程基本上都是:
1、删除节点
2、kbueadm reset
3、ifconfig cni0 down
4、ifconfig flannel.1 down
5、ip link delete cni0
6、ip link delete flannel.1
7、rm -r /var/lib/cni0
9、rm -r /var/lib/kubelet
10、rm -r /etc/cni0
但是我在kubernetes v1.13.4上没用,具体原因还没找到,不过后面我通过执行上 main的基本步骤后,然后修改了加入kubernetes的名字,和第一次加入不一样后,这个节点就可以被调度了。我想他的配置和nodeName应该有一个对应的绑定的关系。网上还有一些人说要删除master节点上cni0网卡,这个操作一定要小心,我也尝试了,删除cni0,如果只有单节点的时候,master节点只要重启的,否则coreDns会起不来,只有重启了他才会重新启动,这个操作风险太大了。我还是选择修改下nodename然后重新加入kubernetes集群。