加载中...

CoreDNS 是一个用 Go 语言编写的灵活、可扩展的开源 DNS 服务器,采用插件链架构,2019 年成为 CNCF 毕业项目。自 Kubernetes 1.13 起,它取代 kube-dns 成为集群默认的 DNS 组件。
CoreDNS 的一切功能都由插件实现:查询依次流经插件链,kubernetes 插件解析集群内 Service 记录,forward 插件转发外部域名,cache 插件缓存结果,另有日志、重写等数十个插件可组合。配置文件 Corefile 按区声明插件栈,语法简洁。
集群内服务发现依赖 CoreDNS:每个 Service 获得形如 服务名.命名空间.svc.cluster.local 的域名,Pod 的 resolv.conf 指向 CoreDNS,应用凭域名即可互访而无需关心 Pod IP 变化;Headless Service 则直接返回各 Pod 地址。
除集群 DNS 外,CoreDNS 也可独立用作通用权威或转发 DNS 服务器,适合需要以极简方式定制解析逻辑的场景。

登录 后参与讨论
暂无讨论,来发表第一条评论吧