dns

dns

IMG_4613.jpg

集群中不同组件之间的DNS解析以及集群中的组件和服务之间的DNS解析。

Service和Pod的域名格式

每当创建Service时, Kubernetes 的DNS服务都会为该Service创建一条记录。它将Service名称映射到IP地址, 因此,在集群中, 和Service处于同一个命名空间的Pod都可以使用其Service名称访问此Service。

假设Web Service位于名为Apps的单独名称空间中。然后, 要从默认名称空间引用它,Kubernetes 的DNS服务会多维护几个子域,完全限定域名web-service.apps.svc.cluster.local

对Pod的解析,将其IP变为短线连接,完全限定域名10.244-2-5.apps.pod.cluster.local

coreDNS的上一个版本叫kube-DNS

coreDNS在kube-system命名空间中以pod的形式创建,由deploy创建多个副本。pod行./Coredns的可执行文件

coreDNS的配置文件 /etc/coredns/Corefile

coreDNS在创建时,会创建一个Service,默认叫kube-dns。pod的dns地址为该Service的Cluster IP。kubelet配置文件中的clusterDNS指定的就是service的IP

Pod的/etc/resolv.conf文件中的search条目指定的Service的子域名,所以可以不使用Service的全域名对其进行访问。对Pod必须指定全域名

posted @ 2024-05-10 10:09  立勋  阅读(2)  评论(0编辑  收藏  举报