gpt4 book ai didi

kubernetes - 如何在 helm install/upgrade 中坚持 --set 键值到 values.yaml

转载 作者:行者123 更新时间:2023-12-02 12:11:37 24 4
gpt4 key购买 nike

如何在使用命令行设置 values.helm install 时将参数键值持久化到 values.yaml 文件。 --name test --set image.tag=2020 --set image.version=20 如何更新这个image.tag和image.version值到values.yaml?空运行将给出结果但不会更新 values.yaml

最佳答案

Helm 是一个包管理器,它是关于自动化 kubernetes 应用程序的部署。它被设计为有点静态,并且只能由图表的创建者更改。

  • Values Files提供对传递到图表中的值的访问。其内容来自多个来源:

    • The values.yaml file in the chart
    • If this is a subchart, the values.yaml file of a parent chart
    • A values file if passed into helm install or helm upgrade with the -f flag (helm install -f myvals.yaml ./mychart)
    • Individual parameters passed with --set (such as helm install --set foo=bar ./mychart)
  • 这是值文件的基本层次结构,但还有更多内容:

  • enter image description here
    感谢这张图片的创作者,不幸的是我找不到作者来感谢他。
  • 您无法更改图表 values.yaml文件完全按照您的想法,因为原始 values.yaml将保持图表创建者所需的状态。
  • 上面的流程图都是关于在 helm install 期间所做的更改或 helm upgrade .


  • 我将尝试举例说明您的使用场景:
  • 图表 1 的默认值是:
  • image: original-image
    version: original-version
  • 您决定使用 --set 更改一些值来部署此图表。如您的示例 helm install --name abc --set image=abc --set version-123 .结果:
  • image: abc
    version: 123
  • 那你要升级图表,修改version value 但保持其他值不变,你运行:`helm upgrade --set version=124 --reuse-values,这是有效的结果值:
  • image: abc
    version: 124

    注意:正如我们在流程图中看到的, 如果您不指定 --reuse-values 它将重置不是 --set 的值在升级过程中恢复到原来的图表。在这种情况下 image再次是 original-image .

    所以,结束你的主要问题:

    how to persist --set key values to values.yaml in helm install/upgrade?



    您可以坚持 --set upgrade 期间的值始终使用 --reuse-values ,但是更改永远不会提交到 values.yaml 的原始模板中。文件。

    如果您是图表的所有者,建议您创建图表的发布版本,这样您就可以跟踪每个版本中的默认设置。

    我希望它有助于澄清问题。

    如果我能进一步帮助您,请在评论中告诉我。

    关于kubernetes - 如何在 helm install/upgrade 中坚持 --set 键值到 values.yaml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62249179/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com