【故障排查】dig通过coredns的svc IP,解析pod的fqdn出现connection timed out; no servers could be reached

环境信息:

#另一个环境
master1 、master2 、node1 、 node2     k8s 1.22docker 、calico、 node2上有kuboard

问题描述:

dig通过coredns的svc IP,解析pod的fqdn出现connection timed out; no servers could be reached
在这里插入图片描述
在这里插入图片描述

最终处理方法:

删掉node2上的kuboard创建的网络。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
正常的状态: node2也有去往calico的路由信息了
在这里插入图片描述

造成“故障”的操作为:

至于为啥会故障/冲突,似懂非懂。 (在创建了docker网络的情况下。容器不会走docker0的?!) ,node2有两个bridge
在这里插入图片描述

排查方法(***):

总结下排查方法/思路
在这里插入图片描述

根据报错的提示,开始认为是coreDNS出了问题,最终是node2节点上calico插件出了问题。下面通过种种现象来复盘
在这里插入图片描述

0、看日志 cat /var/log/messages 和systemctl status kubelet

查看 /var/log/messages 和systemctl status kubelet -l
kubectl logs 
kubectl describe
但本次报错信息有丶抽象。

在这里插入图片描述

注意:coreDNS需要修改configmap,打开log模块,加上log{} ,才会显示出具体日志。
在这里插入图片描述

1、对比法rount -n

对比不同节点的rount -n 内容,对比找不同。
在这里插入图片描述

2、 从内到外法

在node2使用ping和dig。 发现coreDNS服务是OK,所以兜兜转转后,还是calico的问题。
在这里插入图片描述

3 、ping coreDNS的POD IP 和使用dig coreDNS的POD IP

svc到负载的每个pod ip
在这里插入图片描述

ping  coredns的POD IP 
正常的情况是都能ping通的(master、node1 、node2)
3.1、master节点操作 ping

在这里插入图片描述

node1的coreDNS日志:
在这里插入图片描述
node2的coreDNS还是没日志
在这里插入图片描述

3.2、使用dig coreDNS的POD IP

在这里插入图片描述

4、tcpdump抓包排查法 (node2操作)

没日志,而且ping不通,说明请求压根没到,在node02 tcpdump试试
tcpdump -i any -nn -s 0 icmp or port 53 -v

在这里插入图片描述

小结

k8s网络方面故障,看docker network 、 calico 、 coreDNS 、 rount -n

感谢PD, oldxu群里面的高手们。如果不是本人,可能看文章感觉有丶乱,
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值