【问题标题】:How to make configmap propagate to running pods (without restarting them)如何使 configmap 传播到正在运行的 pod(无需重新启动它们)
【发布时间】:2021-05-01 16:24:23
【问题描述】:

更改 configmap 中的变量时,正在运行的 pod 内的环境变量不会更新。

我们有一个无法轻易重启的有状态 pod。

尝试用

更新容器内的环境变量

export VARIABLE_TO_BE_UPDATED="new value"

会持续一段时间,但会在短时间内自动回滚(这可能与打开的会话有关)。

有什么方法可以在不重新启动 pod 的情况下以持久的方式(手动)更新这些环境变量?

【问题讨论】:

  • 也许你可以看看 sidecar 模式的动态配置。

标签: kubernetes environment stateful configmap


【解决方案1】:

您无法重新加载已安装的 ConfigMap。 ConfigMap 在容器启动之前从 API 读取并转储到卷中,之后保持静态。

另一种方法是使用侧卡容器,监视对这些 ConfigMap 的更改,刷新将与您的应用程序容器共享的某个卷中的副本,然后指示您的应用程序重新加载其配置。一个常见的实现是Prometheus Rule Reloader

【讨论】:

  • 感谢您的详尽解释。将进一步研究该实施。
猜你喜欢
  • 1970-01-01
  • 2021-12-07
  • 2019-03-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-11
  • 1970-01-01
相关资源
最近更新 更多