当我exec
进入一个容器时,我看到一个/etc/resolv.conf
看起来像这样的文件:
$ cat /etc/resolv.conf
search namespace.svc.cluster.local svc.cluster.local cluster.local
nameserver 10.43.0.10
options ndots:5
如何将所有已部署容器的搜索域附加到搜索域,以便搜索域包含额外域?例如,如果我想添加任何 pod,默认情况下foo.com
如何更新搜索行使其看起来像波纹管?bar.com
search namespace.svc.cluster.local svc.cluster.local cluster.local foo.com bar.com
笔记:
这是一个自我管理的 k8s 集群。我可以根据需要更新 DNS/集群配置。我已经更新了 coredns 组件以正确解析我的名称服务器,但是这个设置需要应用于我想象的每个 pod。
我查看了 pod 规范,但这不是一个很好的解决方案,因为它需要添加到系统中的每个 pod(或部署/作业/副本集/等)清单中。默认情况下,我需要将其应用于所有 pod。
由于许多现有服务中返回主机名的方式,我不能合理地期望主机名是完全限定的域名。这是为了保持与我们已经拥有的许多服务的向后兼容性(例如,LDAP 请求可能返回 host
fizz
,但查找需要完全解析为fizz.foo.com
)。这是裸机和虚拟机通常在此处配置的方式。