使用主机网络的Kubernetes Pod是否可以通过使用服务名称和服务端口(包括对CoreDNS的利用)将请求直接发送到服务资源?还是我必须通过主机网络上的nodePort公开服务?
答案 0 :(得分:0)
如果您希望Pod将请求直接发送到服务资源,则必须将Pod的dnsPolicy
更改为ClusterFirstWithHostNet
。它应明确用于运行hostNetwork: true
的Pod。这样,它将使用群集DNS,并将位于主机网络中。
您可以在/etc/resolv.conf
文件中对其进行检查。使用dnsPolicy: ClusterFirst
时,此文件会由pod继承,并使用主机的DNS解析器。
设置dnsPolicy: ClusterFirstWithHostNet
时,它将DNS解析器更改为群集的DNS。