通过configmap更新CoreDNS配置

问题描述 投票:0回答:1

[使用Kubernetes,我正在尝试将* .api请求映射到*。I found this thread可以帮助我实现该目标,并且可以通过更新CoreDNS配置来实现。但是我想通过Yaml Apply做到这一点,以便可以轻松地将其部署到不同的环境。另外,如果CoreDNS配置在以后的版本中发生更改,我将不会得到这些更改。所以我的问题是,如何应用yaml文件来实现这一目标:

rewrite stop {
    name regex (.*)\.api {1}.some-namespace.svc.cluster.local
    answer name (.*)\.some-namespace\.svc\.cluster\.local {1}.api
}

我发现了这篇文章:https://docs.microsoft.com/en-us/azure/aks/coredns-custom但是我无法弄清楚如何将该示例用于我的用例。

kubernetes yaml coredns
1个回答
0
投票

鉴于还没有其他答案,让我描述一种可能的方法,实际上是两种。

[主要思想是使用CoreDNS'import指令-“ ...导入插件可用于将文件包含到主要配置中”。在CoreDNS手册中-“ ...此插件有点特殊,可以在Corefile中的任何位置使用。”

一个选项(#1)是编辑coredns configMap以添加import指令以包括来自另一个文件的配置,例如在这些configMap-s中的AKSk3s;然后在部署配置中添加新卷-请参见herehere

[另一个选项(#2)可以使用您的配置添加新的configMap,并且还从[stock]/etc/coredns/CorefileconfigMap中导入作为卷装入的coredns文件;更改coredns deployment配置,从新的configMap中添加一个卷,然后将"-conf" argument指向从新的configMap中作为卷安装的文件。

缺点是,在以后的版本中,如果要更新coredns configMap和/或部署配置更改,则都必须重新实施更改。

© www.soinside.com 2019 - 2024. All rights reserved.