AI 助教问 AI 助教
东方瑞通 · CKA

CoreDNS与Headless Service

CoreDNS 是集群的 DNS 服务器,为 Service 和 Pod 提供域名解析;Headless Service(clusterIP: None)不分配 VIP,直接返回后端 Pod IP。

考点精讲

  1. CoreDNS 是 Kubernetes 集群的 DNS 服务器,运行在 kube-system 命名空间,为集群内的 Service 和 Pod 提供域名解析,实现服务发现。Service 的域名遵循固定格式:..svc.cluster.local。Headless Service 是一种特殊 Service,把 clusterIP 设为 None,不分配虚拟 IP,DNS 查询时直接返回后端所有 Pod 的 IP 列表,而不是一个 VIP。正因如此,Headless Service 常配合 StatefulSet 使用,为每个 Pod 提供稳定的 DNS 标识。理解 DNS 是「集群里的电话本」、Headless 是「不打总机、直接拨分机」,这两个概念就通了。

记忆技巧

DNS 是集群里的电话本
Headless = 无 VIP,直接指到 Pod

常见误区

  • 以为 Headless Service 没有 DNS(它有,只是返回 Pod IP 而非 VIP)
  • 域名解析失败先查 CoreDNS Pod 是否正常
  • 混淆 svc.cluster.local 与外部域名

真题思路

  • 【示例】本页题目为教学模拟题,非真题,仅用于讲解答题思路 Headless Service 的典型特征是?
    clusterIP 设为 None,DNS 直接返回 Pod IP 分配一个集群内虚拟 IP 只能在集群外访问 自动扩容后端 Pod
    答案:A
    解析:Headless Service 设 clusterIP: None,不分配 VIP,DNS 直接返回后端 Pod IP 列表。

常见问题

Q:Service 的域名格式是什么

A:<service>.<namespace>.svc.cluster.local。

Q:Headless Service 有什么特点

A:clusterIP 为 None,DNS 直接返回后端 Pod IP 而非 VIP。

Q:域名解析失败先查什么

A:先查 kube-system 里 CoreDNS 的 Pod 是否正常运行。

相关知识

教材出处:第9章 Kubernetes服务发现 CoreDNS与Headless Service

AI 助教

让 AI 助教带你深入学习,把你卡住的地方直接问它

随时为您答疑解惑

开始答疑