Kubernetes:Kube-DNS与CoreDNS

时间:2018-10-11 13:21:50

标签: 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-dns的服务正在kube-system命名空间中运行。当我使用kubectl describe svc/kube-dns -n kube-system进行检查时,可以看到kube-dns服务链接到coredns。

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

1 个答案:

答案 0 :(得分:3)

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

  

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

     

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

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

图像是重要的,其余是元数据(名称,标签等)。

根据K8S博客here

  

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

此外,请参阅此链接以获取more信息。