当前位置:  首页>> 技术小册>> Kubernetes中文教程(五)

此页面介绍了 CoreDNS 升级过程以及如何安装 CoreDNS 而不是 kube-dns。

关于 CoreDNS

[CoreDNS] 是一个灵活可扩展的 DNS 服务器,可以作为 Kubernetes 集群 DNS。
与 Kubernetes 一样,CoreDNS 项目由 托管。

通过替换现有集群部署中的 kube-dns,或者使用 kubeadm 等工具来为你部署和升级集群,
可以在你的集群中使用 CoreDNS 而非 kube-dns。

安装 CoreDNS

有关手动部署或替换 kube-dns,请参阅
[CoreDNS GitHub 项目]。

迁移到 CoreDNS

使用 kubeadm 升级现有集群

在 Kubernetes 1.21 版本中,kubeadm 移除了对将 kube-dns 作为 DNS 应用的支持。
对于 kubeadm v,所支持的唯一的集群 DNS 应用是 CoreDNS。

当你使用 kubeadm 升级使用 kube-dns 的集群时,你还可以执行到 CoreDNS 的迁移。
在这种场景中,kubeadm 将基于 kube-dns ConfigMap 生成 CoreDNS 配置(”Corefile”),
保存存根域和上游名称服务器的配置。

升级 CoreDNS

你可以在 [CoreDNS version in Kubernetes]
页面查看 kubeadm 为不同版本 Kubernetes 所安装的 CoreDNS 版本。

如果你只想升级 CoreDNS 或使用自己的定制镜像,也可以手动升级 CoreDNS。
参看[指南和演练]
文档了解如何平滑升级。
在升级你的集群过程中,请确保现有 CoreDNS 的配置(”Corefile”)被保留下来。

如果使用 kubeadm 工具来升级集群,则 kubeadm 可以自动处理保留现有 CoreDNS
配置这一事项。

CoreDNS 调优

当资源利用方面有问题时,优化 CoreDNS 的配置可能是有用的。
有关详细信息,请参阅有关[扩缩 CoreDNS 的文档]。

你可以通过修改 CoreDNS 的配置(”Corefile”)来配置 [CoreDNS],
以支持比 kube-dns 更多的用例。
请参考 kubernetes CoreDNS 插件的[文档]
或者 CoreDNS 博客上的博文
[Custom DNS Entries for Kubernetes],
以了解更多信息。


该分类下的相关小册推荐: