设置SKYDNS_NAMESERVERS而不编写RC

时间:2016-10-04 16:43:10

标签: dns kubernetes google-kubernetes-engine skydns kube-dns

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

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

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

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

提前谢谢。

1 个答案:

答案 0 :(得分:1)

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

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

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