前两篇
分别介绍了K8S 1.12版本的master和节点篇的搭建,在k8s 1.12中虽然默认集成了DNS,但是笔者发现还不能直接用,这里记录了处理的过程。
1、查看和删除原来自带的kube-dns(可以进入k8s页面删除掉deployment和service)
2、下载文件这里是v1.12.2,网盘密码:8gyz(现在最新版本好像是1.12.6,都一样的操作)
3、复制并解压到k8s集群中(可以任是master和节点)
4、执行下面的命令,生成部署coreDNS所需的coredns.yaml文件,并创建coreDns
sed -f transforms2sed.sed coredns.yaml.base > coredns.yaml
kubectl apply -f coredns.yaml
5、查看coredns的Pod,确认所有Pod都处于Running状态:
kubectl get pods -n kube-system -l k8s-app=kube-dns
[root@Test-chentianhui--devops-2 ~]# kubectl get pods -n kube-system -l k8s-app=kube-dns
NAME READY STATUS RESTARTS AGE
coredns-75cd5c5666-hlnxx 1/1 Running 0 2d20h
coredns-75cd5c5666-t788f 1/1 Running 0 2d20h
6、验证DNS功能是否好用:
kubectl run curl --image=radial/busyboxplus:curl -i --tty
nslookup kubernetes.default
Server: 10.96.0.10 Address 1: 10.96.0.10 kube-dns.kube-system.svc.cluster.local
Name: kubernetes Address 1: 10.96.0.1 kubernetes.default.svc.cluster.local