DNS (domain name system),提供域名解析服务,解决了难于记忆的IP地址问题,以更人性可读可记忆可标识的方式映射对应IP地址。Cluster DNS扩展插件用于支持k8s集群系统中各服务之间发现与调用。
环境yaml文件在https://github.com/c4rt1y/k8s,文件在examples目录里面。
#下拉代码
git clone git@github.com:c4rt1y/k8s.git
#在skydns目录中skydns-rc.yml需要需要和本地修改保持一致的地方,--kube_master_url使用k8s的master节点ip或者host地址,-domain=定义域名,默认有两处,一处我设置为kube.local,另一处默认存在kube.local.(注意后面存在点好)。
#在skydns-svc.yml中,需要修改的地方是clusterIP地址,必须保证是自己在apiserver中设置的--service-cluster-ip-range网段内,模式默认设置,所以地设置址为10.254.0.254。
#在node节点需要配置服务,添加内容--cluster_dns=10.254.0.254 --cluster_domain=kube.local
[root@k8s-node-1 /]# cat /etc/kubernetes/kubelet
KUBELET_ADDRESS="--address=0.0.0.0"
KUBELET_HOSTNAME="--hostname-override=k8s-node-1"
KUBELET_API_SERVER="--api-servers=http://k8s-master:8080"
KUBELET_POD_INFRA_CONTAINER="--pod-infra-container-image=registry.access.redhat.com/rhel7/pod-infrastructure:latest"
KUBELET_ARGS="--cluster_dns=10.254.0.254 --cluster_domain=kube.local"
[root@k8s-node-1 /]# systemctl restart kubelet
#节点2也如此设置
#启动skydns
[root@k8s-master /]# kubectl create -f skydns-rc.yml -f skydns-svc.yml
#启动busybox
[root@k8s-master /]# kubectl create -f busybox.yml
#查看pod情况
[root@k8s-master /]# kubectl get pod
NAME READY STATUS RESTARTS AGE
busybox 1/1 Running 14 14h
frontend-39t23 1/1 Running 0 49s
frontend-gr3qm 1/1 Running 0 49s
frontend-zl4v4 1/1 Running 0 49s
kube-dns-v6-0pwd3 3/3 Running 0 14h
redis-master-707jw 1/1 Running 0 49s
redis-slave-lpd99 0/1 Running 0 49s
redis-slave-n5v8f 1/1 Running 0 49s
#测试1,验证解析地址是否ok
[root@k8s-master /]# kubectl exec -it busybox nslookup kubernetes.default
Server: 10.254.0.254
Address 1: 10.254.0.254
Name: kubernetes.default
Address 1: 10.254.0.1
#测试2,验证解析地址是否ok
[root@k8s-master /]# kubectl exec -it busybox nslookup busybox
Server: 10.254.0.254
Address 1: 10.254.0.254
Name: busybox
Address 1: 172.17.0.2 busybox
#测试3,验证解析地址是否ok
[root@k8s-master /]# kubectl exec -it busybox nslookup frontend
Server: 10.254.0.254
Address 1: 10.254.0.254
Name: busybox
Address 1: 172.17.186.195
#测试4,验证解析地址是否ok
[root@k8s-master /]# kubectl exec -it busybox nslookup redis-master
Server: 10.254.0.254
Address 1: 10.254.0.254
Name: busybox
Address 1: 172.17.7.177
http://www.cnblogs.com/xkops/p/6232392.html