【问题标题】:Helm3 Kubernetes environment variable between upgrades升级之间的 Helm3 Kubernetes 环境变量
【发布时间】:2021-10-08 16:27:41
【问题描述】:

我有一个ConfigMap,我在其中定义了一些环境变量,例如log_level..,并在部署中引用它们。

          envFrom:
        - configMapRef:
            name: test_config_map

部署后,我更改了配置映射中的一些值并重新启动了 pod。

kubectl edit configmap test_config_map

当我升级 helm chart 时,修改后的值会被默认值覆盖。

我假设 helm v3 3-way merge 将采用实时状态并保留旧值。但好像不是这样的。

有什么方法可以在升级后保留修改后的值?

【问题讨论】:

  • 我不确定是否有办法做到这一点。但是,无论如何你都不应该!最好的做法是让您的资源定义,或者在使用 helm 图表的情况下,您的 values.yaml 文件存储在您的代码存储库中,而不是在您的集群上手动更改内容,因为这会导致配置漂移并且难以恢复发生中断或其他紧急情况时的确切先前版本
  • 你好@PGS。以上评论是否回答了您的问题?
  • 你好PGS,意思是qo。考虑发布第一条评论作为答案,以便更清楚。

标签: kubernetes containers kubernetes-helm kubernetes-pod helm3


【解决方案1】:

这是为提高可见性而发布的社区 wiki 答案。随意扩展它。

正如 cmets 中已经提到的,最佳实践是将您的资源定义,或者在使用 helm 图表的情况下,将您的 values.yaml 文件存储在您的代码存储库中,而不是在您的集群上手动更改内容,因为这会导致配置漂移,并且在出现中断或其他紧急情况时很难恢复到原来的版本。

请参阅Configuration Best Practices

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-20
    • 1970-01-01
    • 2018-09-06
    • 2020-07-22
    • 2015-10-08
    • 2021-08-19
    • 1970-01-01
    相关资源
    最近更新 更多