首页/云/Kubernetes 速查/dnsPolicy 与 dnsConfig 定制
本包目录(307 条)
kubectl 基础56 条工作负载36 条
网络与服务55 条
配置与存储54 条调度与资源52 条集群运维与排障54 条

dnsPolicy 与 dnsConfig 定制

dnsPolicy 决定 Pod 用哪套解析配置(默认 ClusterFirst);hostNetwork Pod 需要 ClusterFirstWithHostNet;dnsConfig 可追加自定义 nameserver/search。

Kubernetes 速查云更新于 2026-10-12

dnsPolicy

取值行为适用
ClusterFirst先集群 DNS,外部走上游默认,普通业务 Pod
Default继承节点 resolv.conf特殊排查场景
None完全自定义(配合 dnsConfig)指定专用解析器
ClusterFirstWithHostNethostNetwork 下的集群解析hostNetwork=true 的 Pod

dnsConfig 示例

dnsConfig 示例
spec:
  dnsPolicy: None
  dnsConfig:
    nameservers: ["10.96.0.10"]
    searches: ["prod.svc.cluster.local", "svc.cluster.local"]
    options:
      - name: ndots
        value: "5"
排查「Pod 内解析行为与其他 Pod 不同」时,先对比两边的 dnsPolicy 与 resolv.conf。

易错点

  • hostNetwork Pod 默认用节点解析配置,访问集群服务会失败,需显式 ClusterFirstWithHostNet
  • dnsPolicy=None 时配置错误会直接导致解析不可用,改前保留可用模板

数据来源与参考

  • Kubernetes 官方文档 · Pod DNS 配置(dnsPolicy/dnsConfig)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌