在 consul 密钥更改时自动重新加载 Kubernetes pod

automatically reload Kubernetes pod on consul key change

我在 https://dev.example.com/ 上有一个领事服务器 运行,我在上面存储如下配置:

consul 键名=dev

consul 键值 = some yaml data

kubernetes configMap 值 some yaml data --> (这与 consul 数据同步)

我想做的是,一旦我在 some yaml data 中更改某些内容,这些值应该自动反映在 configMap 中,并且 pod 应该自动重新加载以捕获新值。

我试过 envconsul 但它只选择具有一个值的键。

我尝试了 consul-template 但没有找到任何好的工作示例。

看看https://github.com/Trendyol/trendyol-consul-template-injector。它允许您将 consul-template 作为 sidecar 注入到您的 pod 中,并将从 ConfigMap 中提供的模板生成文件。您的应用程序将需要监视此生成的文件,并在文件更改时重新加载自身。

请参阅 https://medium.com/trendyol-tech/configuration-and-secret-management-with-consul-template-on-kubernetes-dcc4c6695142 了解更详细的博客 post 解释为什么构建它以及它是如何工作的。