Kubernetes:Kube-DNS与CoreDNS

lan*_*oxx 9 dns kubernetes

我是Kubernetes的新手,希望能更好地了解Kube-DNS和CoreDNS之间的区别。

据我了解,建议使用更新的CoreDNS而不是较旧的Kube-DNS。

我使用设置了一个小型群集kubeadm,现在我对CoreDNS和Kube-DNS之间的区别感到有些困惑。

通过使用kubectl get pods --all-namespaces我可以看到我有两个正在运行的CoreDNS Pod。

但是使用,kubectl get svc --all-namespaces我还看到我kube-dnskube-system命名空间中有一个名为run 的服务。当我检查时,kubectl describe svc/kube-dns -n kube-system可以看到该kube-dns服务链接到coredns。

我现在想知道我是否同时运行kube-dns和coredns。否则,为什么调用该服务kube-dns而不调用该服务core-dns

Pra*_*ati 5

我有K8S 1.12。对dns pod进行描述。

kubectl描述pod coredns-576cbf47c7-hhjrs --namespace = kube-system | grep -i“图像:”

图片:k8s.gcr.io/coredns:1.2.2

看起来coredns正在运行。根据文档,CoreDNS是K8S 1.11的默认设置。对于以前的安装,它是kube-dns。

图像很重要,剩下的就是元数据(名称,标签等)。

据K8S博客在这里

在Kubernetes 1.11中,CoreDNS已达到基于DNS的服务发现的通用可用性(GA),可以替代kube-dns插件。这意味着CoreDNS将作为各种安装工具的即将发布版本中的一个选项提供。实际上,kubeadm团队选择将其设为从Kubernetes 1.11开始的默认选项。

另外,请参阅此链接以获取更多信息。

  • 是。出于兼容性考虑已完成此操作。从kube-dns迁移到CoreDNS之后,现有客户端仍可以使用`kube-dns`来调用服务。 (4认同)