Kubernetes(十四)部署K8S内部DNS服务

用途:为service提供dns解析,部署后可以通过service名称访问该service,service会转发到pod,如果不部署dns,可以通过service的IP访问,但是耦合性较高;
 
查看service
kubectl get svc

输出以下内容:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.0.0.1 <none> 443/TCP 41h

一、安装dns
去git获取yaml
or
使用我们提供的
 
kubectl apply -f coredns.yaml
 
注意:clusterIP要和node节点的cat /opt/kubernetes/cfg/kubelet.conf 的clusterDNS一致,否则pod会解析失败
 
二、查看dns
kubectl get pods -n kube-system
 
输出以下内容:
NAME READY STATUS RESTARTS AGE
coredns-6d8cfdd59d-mw47j 1/1 Running 0 5m45s
kube-flannel-ds-amd64-q8rmk 1/1 Running 0 18h
kube-flannel-ds-amd64-zq7hc 1/1 Running 0 18h

三、测试DNS可用性
 
安装busybox工具
kubectl apply -f bs.yaml
 
查看我们启动的pod
kubectl get pods
 
进入容器内部
kubectl exec -t busybox sh
 
测试
ping kubernetes
posted @ 2020-01-30 11:31  谭洪军  阅读(2947)  评论(0编辑  收藏  举报