coredns 简介
CoreDNS是用来做集群内部域名解析。类似Centos7的bind服务
原理
CoreDNS安装成功后会成为DNS服务器,当创建Service后,CoreDNS会将Service的名称与IP记录起来,这样Pod就可以通过向CoreDNS查询Service的名称获得Service的IP地址。
在Pod中访问nginx Pod的 ServiceName:Port,会先从CoreDNS中解析出nginx Service的IP地址,然后再访问nginx Service的IP地址,从而访问到nginx Pod。
集群内域名解析示例图:
查询
# 查询
kubectl get cm -n kube-system
# 查询coredns
kubectl get cm coredns -n kube-system
# 查询配置
kubectl get cm coredns -n kube-system -o yaml
# 先备份
kubectl get cm coredns -n kube-system -o yaml > coredns.yaml