0

我想kube-dnskube-system命名空间中添加额外的名称服务器(此处提供的解决方案:https ://stackoverflow.com/a/34085756/2461761 ),但是以自动方式执行此操作。

所以我知道我可以通过https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/dns创建自己的 dns 插件并在系统的命名空间中启动它,但是,我试图提供一个简单的脚本让开发人员使用内置的 DNS 解析来启动他们自己的集群,并且不希望他们关心系统命名空间。

有没有办法修改/设置SKYDNS_NAMESERVERS环境变量而不必复制复制控制器?

或者甚至通过命令设置它并重新启动kube-dns部署的 pod?

先感谢您。

4

1 回答 1

1

我仍然认为“添加SKYDNS_NAMESERVERS到清单文件”解决方案是一个不错的选择。

假设开发人员仍需要启动集群,最好通过清单文件提前设置上游 DNS 服务器,而不是动态更改它们。或者在集群启动后是否有任何要求需要这样做?

如果这必须在一切运行时完成,一种方法是修改位于主节点上的清单文件。对于当前版本的 kubernetes(1.4),您还需要将 ReplicationController 名称修改为新名称,然后插件管理器将为您更新资源。但请注意,由于当前的 Addon Manager 以 delete->create 方式执行更新,因此中间会有 kube-dns 中断(可能是几秒钟)。

于 2016-10-04T23:29:12.553 回答