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

K3s集群CoreDNS异常致Istio安装失败:Service请求返回Pod IP

问题分析与排查方案

核心问题

离线环境下,RHEL 7.9主机Docker容器中运行的K3s集群,CoreDNS解析kubernetes.default时返回CoreDNS Pod IP而非kube-dns Service IP,导致Istio Ingress Gateway无法解析Istiod Service,证书请求超时,部署失败。

排查与解决步骤

1. 验证kube-dns Service配置正确性

  • 查看kube-dns Service的ClusterIP:
    kubectl get svc kube-dns -n kube-system
    
    确认输出的CLUSTER-IP是否为预期的Service IP(如示例中的10.43.0.2)。
  • 检查Service的selector与CoreDNS Pod标签是否匹配:
    kubectl describe svc kube-dns -n kube-system | grep Selector
    kubectl get pods -n kube-system -l k8s-app=kube-dns
    
    确保selector(通常为k8s-app=kube-dns)能正确关联到CoreDNS Pod。

2. 检查kube-proxy的Service转发规则

安全加固可能破坏了kube-proxy生成的iptables/IPVS规则,导致Service流量无法转发:

  • iptables模式:查看kube-dns相关的DNAT规则:
    iptables-save | grep kube-dns
    
    需存在指向CoreDNS Pod IP的DNAT规则。
  • IPVS模式:验证IPVS虚拟服务配置:
    ipvsadm -Ln | grep <kube-dns-service-ip>
    
    确认输出中包含CoreDNS Pod作为后端节点。

3. 排查CoreDNS自身状态与配置

  • 查看CoreDNS的ConfigMap,确认kubernetes插件配置无异常:
    kubectl get configmap coredns -n kube-system -o yaml
    
    确保kubernetes cluster.local in-addr.arpa ip6.arpa段配置正常,无额外拦截或错误配置。
  • 查看CoreDNS Pod日志,排查是否有运行异常:
    kubectl logs -n kube-system -l k8s-app=kube-dns
    
    除正常查询记录外,需关注是否有端口绑定、权限或插件加载错误。
  • 重启CoreDNS Pod,排除临时运行异常:
    kubectl rollout restart deployment coredns -n kube-system
    

4. 检查节点防火墙/安全加固规则

安全加固操作可能限制了DNS流量的转发:

  • 验证节点防火墙(firewalld/iptables)是否允许UDP 53端口的Pod间通信:
    • 允许Pod网络段到kube-dns Service IP的UDP 53流量
    • 确认节点间的Pod网络(如flannel)通信未被拦截
  • 检查是否有SELinux规则限制了CoreDNS的网络操作:
    sestatus
    ausearch -m avc -ts recent | grep coredns
    
    若存在SELinux拦截,需调整对应规则或设置适当的上下文。

5. 确认K3s启动参数的DNS配置

检查K3s启动命令是否正确配置了集群DNS参数:

ps aux | grep k3s

确认--cluster-dns参数指向的是kube-dns的Service IP,--cluster-domain设置为cluster.local(默认值)。

6. 临时验证DNS解析能力

  • 直接指定CoreDNS Pod IP进行解析测试,判断是Service转发问题还是CoreDNS本身问题:
    nslookup kubernetes.default <coredns-pod-ip>
    
    若解析成功,说明Service转发链路异常;若失败,需排查CoreDNS的域名解析逻辑。

内容的提问来源于stack exchange,提问作者JCole91

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 02:10:39