You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kubernetes+Calico+CRIO集群新增节点Pod DNS访问异常:部分CoreDNS节点可达部分不可达

Kubernetes+Calico+CRIO集群新增节点Pod DNS访问异常:部分CoreDNS节点可达部分不可达

我有一个裸金属Kubernetes集群,包含1个控制平面节点和10个工作节点,所有原有工作节点的配置完全一致:相同的OS、kube/crio/iptables/ufw版本。集群使用Calico作为CNI,Pod CIDR和Service CIDR配置均无问题。

最近新增了两个节点,其中一个工作正常,但另一个出现了奇怪的DNS问题:当在这个节点上运行Pod并执行nslookup时,Pod能连接到CoreDNS Service,但部分CoreDNS后端节点可达,另一部分则超时。

具体表现是:如果CoreDNS Pod运行在节点1、2、3、4、5上,从故障节点的Pod发起请求时,始终能成功访问节点1、2、3上的CoreDNS,但访问节点4、5上的CoreDNS时必然超时。这个现象完全一致,没有随机性。

集群所有节点使用UFW作为主机防火墙,节点之间没有访问限制(UFW已允许节点间所有出入流量)。我已经花了两天排查这个问题,但始终找不到根源。

有没有人遇到过类似的问题?哪怕是一丁点思路也可以分享一下吗?


补充排查信息(基于回复建议)

感谢你的回复。我已经尝试了你提到的所有方法,以下是通过tcpdump抓取并在Wireshark中分析的DNS数据包情况:

  • 当访问可达的CoreDNS节点时:从故障节点到可达节点执行nslookup google.com,能正常获取响应
  • 当访问不可达的CoreDNS节点时:从故障节点到不可达节点执行nslookup google.com,完全收不到响应,甚至CoreDNS日志里都没有超时记录

另外我做了额外验证:在某个不可达的CoreDNS节点主机上启动一个HTTP服务器,故障节点的Pod可以正常访问这个服务器,说明主机间的防火墙规则并没有阻断通信。即使关闭UFW,问题依然存在。

还有其他思路吗?非常感谢!


备注:内容来源于stack exchange,提问作者Corentin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 12:40:26