是否可以在Kuberenetes的相同 namespace 中从一个Pod到另一个Pod进行反向DNS查找?
设置:Kubernetes 1.5,kube-dns 1.9
当我使用nslookup执行pod时,我没有主机名,而只有nslookup超时,例如:
$ time kubectl exec mypod -- nslookup 172\.18\.14\.13
nslookup: can't resolve '(null)': Name does not resolve Name:
172.18.14.13 Address 1: 172.18.14.13
真正的0m5.592s
mypod2确实具有内部IP 172.18.14.13。 mypod和mypod2均已部署到相同的 namespace (默认)。
从mypod到mypod的nslookup可以工作:
$ time kubectl exec mypod -- nslookup 172\.18\.58\.13
nslookup: can't resolve '(null)': Name does not resolve
Name: 172.18.58.13
Address 1: 172.18.58.13 mypod
real 0m0.403s
我必须配置一些特殊的东西还是设计使然?
最佳答案
结论是设计上不可能做到这一点。
常规的Pod ip反向查找需要在kubedns和kubernetes中进行大量工作,并且这没有很多用例。在Kubedns 1.11之后,支持无头服务dns反向查找。
您可以在issue#33470和PR#25中对此进行更多讨论
关于kubernetes - 如何在Pod IP上使用kube-dns启用反向DNS查找?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43141109/