可以通过以下命令来获取istiocoredns服务的Cluster IP:
kubectl get svc istiocoredns -n istio-system NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE istiocoredns ClusterIP 172.19.10.196 <none> 53/UDP,53/TCP 44m
更新集群的CoreDNS的配置项conf igmap,将此istiocoredns服务作为*.global域的上游DNS服务,在此配置项conf igmap中添加域*.global,如下所示:
apiVersion: v1
kind: ConfigMap
metadata:
name: coredns
namespace: kube-system
data:
Corefile: |-
.:53 {
errors
health
kubernetes cluster.local in-addr.arpa ip6.arpa {
pods insecure
upstream
fallthrough in-addr.arpa ip6.arpa
}
prometheus :9153
proxy . /etc/resolv.conf
cache 30
reload
}
global:53 {
errors
cache 30
proxy . {replace this with the actual cluster IP of this istiocoredns service}
}
更改此配置项后,集群的CoreDNS容器会重新加载这些配置内容,可以通过如下命令查看加载日志:
kubectl get -n kube-system pod | grep coredns coredns-8645f4b4c6-5frkg 1/1 Running 0 20h coredns-8645f4b4c6-lj59t 1/1 Running 0 20h kubectl logs -f -n kube-system coredns-8645f4b4c6-5frkg .... 2019/01/08 05:06:47 [INFO] Reloading 2019/01/08 05:06:47 [INFO] plugin/reload: Running configuration MD5 = 05514b3e44bcf4ea805c87cc6cd56c07 2019/01/08 05:06:47 [INFO] Reloading complete kubectl logs -f -n kube-system coredns-8645f4b4c6-lj59t .... 2019/01/08 05:06:31 [INFO] Reloading 2019/01/08 05:06:32 [INFO] plugin/reload: Running configuration MD5 = 05514b3e44bcf4ea805c87cc6cd56c07 2019/01/08 05:06:32 [INFO] Reloading complete