我当前将Pod规范中的“ dnsPolicy”配置设置为“ Default”,以便Pod可以继承节点的DNS配置。
虽然这很好,但为了使策略生效,它需要重新构建/重新部署Docker容器,并且仅限于Pod级别。
是否有类似的策略可以在群集范围内应用?由于群集范围内的策略,这样将新Pod部署到群集上会自动继承节点DNS配置吗?
答案 0 :(得分:2)
在整个集群范围内实际上并没有受支持的方法。原因之一是您的coredns
或kube-dns
使用dnsPolicy: Default
而不是默认的dnsPolicy: ClusterFirst
,因此在群集范围内更改它可能会影响您的coredns/kube-dns
窗格。
但是,可以将Dynamic Admission Controllers与更复杂的方法一起使用。特别是,使用MutatingAdmissionWebhook可以用来修改带有某些注释的窗格,使其具有dnsPolicy: Default
。例如,Istio使用它来注入Envoy边车。这是一个很好的document,它描述了如何构建自己的MutatingAdmissionWebhook。