首页 > kubernetes(k8s) > coreDns状态CrashLoopBackOff问题解决
2020
03-04

coreDns状态CrashLoopBackOff问题解决

kubernetes coredns容器状态一直为CrashLoopBackOff,状态不断重启,在running和CrashLoopBackOff直接不停转换

查看日志

错误内容如下:

查看详细

从日志上看是到10.96.0.1的443网络不可达导致

阶段2

通过以上命令发现两个coreDns的2个pod节点都分配在master节点上,node节点没有分配上去,有了一个想法,删除一个coredns的pod,重新分配试试

node2节点 cni0

通过以上的分析,我们分别在master节点上执行ip add查看flannel网卡地址分配情况。发现master节点cni0地址为172.17.67.1,而node2节点地址为10.244.2.1,不在初始化分配地址段10.244.0.0/16内,我们找到原因了,将master节点pod地址重新分配即可。

阶段3

上网搜资料上看,有网友建议kubeadm reset重置来解决,但是此方法比较麻烦,我采用如下方法

先停止cni0 网卡,然后使用brctl 命令删除此网卡,删除后flannel会立刻重新创建此网卡,使用ip add查看,网卡地址已经变成10.244段。

注意:

  • brctl 命令可以使用命令yum install -y bridge-utils安装
  • 停止网卡可删除操作最好使用分号一起执行,否者停止后启动很快,会提示此网卡为up状态,不可删除。

然后使用命令删掉coreDns 状态为CrashLoopBackOff 容器,让他自动新建,新建后的容器状态就正常了

正常了

再看下master的cni0网卡地址是否变成了10.244.*.*

最后编辑:
作者:shooter
这个作者貌似有点懒,什么都没有留下。