使用DNS进行k8s服务发现

时间:2017-12-08 16:16:23

标签: kubernetes

最近,我发现了一些有趣的东西,我还没有见过b4。我正在使用" kube-dns"用于服务发现。如果想象所有名称(service-name.namespace.svc.cluster.local)都应该为nginx服务(nginx-svc)反映相同的IP。但我注意到dns查询1)nginx-svc和2)nginx-svc.default是不同的。

我创建了一个服务(称为nginx-svc)并由nginx pod支持。如果我进入nginx pod运行DNS分辨率,那就没问题了。如果我像下面那样运行busybox,则会出现nginx-svc.default解决方案的问题。不知道为什么?我想它应该有效。

kubectl run -it --rm busybox --restart=Never --image=busybox sh

/ # nslookup nginx-svc
Server:    10.96.0.10
Address 1: 10.96.0.10 kube-dns.kube-system.svc.cluster.local

Name:      nginx-svc
Address 1: 10.97.174.54 nginx-svc.default.svc.cluster.local
/ # nslookup nginx-svc.default
Server:    10.96.0.10
Address 1: 10.96.0.10 kube-dns.kube-system.svc.cluster.local

Name:      nginx-svc.default
Address 1: 198.105.244.228
Address 2: 198.105.254.228
/ # exit

对此有何想法?或者,建议? 感谢

此外,对于上面的nslookup我在同一命名空间中使用busybox(这是"默认")和nginx-svc。

/ # cat /etc/resolv.conf 
nameserver 10.96.0.10
search default.svc.cluster.local svc.cluster.local cluster.local
options ndots:5

0 个答案:

没有答案
相关问题