如何查看 Helm 版本中使用了哪些自定义值?

How do I see what custom values were used in a Helm release?

当我使用 helm install 将图表安装到 Kubernetes 集群时,我可以将自定义值传递给命令以配置发布。 helm 必须将它们存储在某个地方,因为我可以稍后回滚到它们。但是,我找不到一种方法来查看已部署版本或先前版本中的值。

我想查看回滚版本时哪些值会发生变化(并确认设置了哪些值)。我认为 inspectstatus 可能对此有所帮助,但它们做的事情不同。如何查看实际部署的值?

要查看发布中实际部署的内容,请使用 helm get

如果您使用 helm -n <namespace> get all <release-name>,您会在命名空间 <namespace> 中获得当前版本 <release-name> 的所有信息。你可以指定--revision来获取特定版本的信息,你可以通过它来查看rollback的效果。

您可以使用 helm -n <namespace> get values <release-name> 只获取值 install used/computed 而不是整个图表和所有内容,或者 helm -n <namespace> get manifest <release-name> 查看生成的资源配置††.

此信息的存储位置取决于您使用的 helm 版本:

  • 对于版本 2:它位于 kube-system 命名空间中名为 <release-name>.<version>configMap 中。您可以获得有关 here.
  • 的更多详细信息
  • 对于版本 3,它(默认情况下)位于部署发布的命名空间中名为 <release-name>.<version>secret 中。秘密的内容与 helm 版本 2 configMap
  • 中的内容大致相同

对于 helm 版本 2,使用 helm get <release-name> 而不是 helm get all <release-name>

††对于 helm 版本 2,发布名称必须在集群范围内是唯一的。对于 helm 版本 3,版本名称限定为命名空间,并且 helm 命令在“当前”命名空间上运行,除非您使用 -n--namespace 命令指定命名空间行选项。

helm get <release-name> 不再适用于 Helm3。 helm get values <release-name> 确实显示了用于该版本的自定义值。注意:要获取所有可能的参考值,请使用 helm show values <your-chart> - 虽然这不会显示自定义值。