
k8s的CoreDNS
1.CoreDNS简介
CoreDNS:是一个DNS服务器,Kubernetes默认采用,以Pod部署在集群中,CoreDNS服务监视Kubernetes API,为每一个Service创建DNS记录用于域名解析。
CoreDNS YAML文件:https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/dns/coredns
ClusterIP A记录格式:..svc.cluster.local
示例:my-svc.my-namespace.svc.cluster.local
2.查看
查看sys下的服务
#kubectl -n kube-system get pod -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES coredns-545d6fc579-hbxmz 1/1 Running 7 13d 10.244.200.232 cka-master <none> <none> coredns-545d6fc579-s2zs2 1/1 Running 7 13d 10.244.200.228 cka-master <none> <none>解析dns
/ # nslookup web.aliang-cka.svc.cluster.local Server: 10.96.0.10 Address: 10.96.0.10:53 *** Can't find web.aliang-cka.svc.cluster.local: No answer / # / # cat /etc/resolv.conf nameserver 10.96.0.10 search aliang-cka.svc.cluster.local svc.cluster.local cluster.local options ndots:5进入到pod查看DNS
[root@cka-master /root/workspace] cka-master #kubectl get pods NAME READY STATUS RESTARTS AGE bs 1/1 Running 0 38s #kubectl exec -it bs -- sh / # cat /etc/resolv.conf nameserver 10.96.0.10 search default.svc.cluster.local svc.cluster.local cluster.local options ndots:5解析域名
/ # nslookup nginx.default.svc.cluster.local Server: 10.96.0.10 Address 1: 10.96.0.10 kube-dns.kube-system.svc.cluster.local Name: nginx.default.svc.cluster.local Address 1: 10.109.215.92 nginx.default.svc.cluster.local
3.其他
创建默认的kubernetes名称空间目的
#kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 16d用于k8s的pod可以访问k8s集群,不需要走宿主机外网
#kubectl get ep NAME ENDPOINTS AGE kubernetes 192.168.122.71:6443 16d