如何在 pod IP 上使用 kube-dns 启用反向 DNS 查找?
How can I enable reverse DNS lookups with kube-dns on pod IP?
是否可以在 Kuberenetes 上的同一命名空间中从一个 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 都已部署到相同的命名空间(默认)。
从 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 and PR#25
中获得更多关于此的讨论
是否可以在 Kuberenetes 上的同一命名空间中从一个 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 都已部署到相同的命名空间(默认)。
从 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 and PR#25
中获得更多关于此的讨论