Можно ли выполнить запрос Reverse-dns для IP-адреса POD, чтобы получить его имя хоста для развертывания в Kubernetes? - PullRequest
0 голосов
/ 02 ноября 2018

У меня есть развертывание, в котором реплики масштабируются вверх и вниз, и все они находятся в режиме автономного обслуживания. Я могу запросить ..svc.cluster.local, который возвращает список всех IP-адресов модуля.

Я хотел знать, возможно ли сделать запрос для каждого IP-адреса модуля и получить имя хоста модуля? Он работает для стручков на том же хост-компьютере. Но это не разрешает стручки от других хостов.

Я заметил, что он работает для StatefulSet. Но это не работает для развертывания.

1 Ответ

0 голосов
/ 03 ноября 2018

Это уже обсуждалось здесь для kube-dns. Там было больше дискуссий здесь тоже .

Тем не менее, записи PTR у меня нормально работают с coredns и K8s 1.12:

$ kubectl get pod helloworld-xxxxxxxxxx-xxxxx -o=jsonpath="{.metadata.annotations['cni\.projectcalico\.org/podIP']}" | cut -d "/" -f 1
192.168.11.28
# Connect to another pod   
$ kubectl exec -it anotherpod-svc-xxxxxxxxxx-xxxxx bash
root@anotherpod-xxxxxxxxxx-xxxxx:/# dig +short -x 192.168.11.28
192-168-11-28.helloworld.default.svc.cluster.local.
root@anotherpod-xxxxxxxxxx-xxxxx:/# dig +short 192-168-11-28.helloworld.default.svc.cluster.local
192.168.11.28

# Another helloworld pod on a different physical machine
$ kubectl get pod helloworld-xxxxxxxxxx-xxxxx -o=jsonpath="{.metadata.annotations['cni\.projectcalico\.org/podIP']}" | cut -d "/" -f 1
192.168.4.6
# Connect to another pod   
$ kubectl exec -it anotherpod-svc-xxxxxxxxxx-xxxxx bash
root@anotherpod-svc-xxxxxxxxxx-xxxxx:/# dig +short -x 192.168.4.6
192-168-4-6.helloworld.default.svc.cluster.local.
root@anotherpod-xxxxxxxxxx-xxxxx:/# dig +short 192-168-4-6.helloworld.default.svc.cluster.local
192.168.4.6
...