首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在helm中合并/重写值

在helm中合并/重写值是通过使用values.yaml文件和--set标志来实现的。values.yaml文件是一个包含配置值的文件,可以在部署helm chart时使用。通过在values.yaml文件中定义键值对,可以设置各种配置选项。

要合并值,可以使用--set标志来覆盖values.yaml文件中的值。例如,假设values.yaml文件中定义了一个名为image.tag的键值对,可以使用以下命令来合并一个新的值:

代码语言:txt
复制
helm install mychart ./mychart --set image.tag=newtag

这将使用新的tag值来覆盖values.yaml文件中定义的image.tag值。

如果要重写整个值,可以使用--set-string标志。例如,假设values.yaml文件中定义了一个名为image.repository的键值对,可以使用以下命令来重写整个值:

代码语言:txt
复制
helm install mychart ./mychart --set-string image.repository=newrepository

这将使用新的repository值来替换values.yaml文件中定义的image.repository值。

除了--set和--set-string标志外,还可以使用--values标志来指定一个包含要合并的值的文件。例如,假设有一个custom-values.yaml文件包含了要合并的自定义值,可以使用以下命令来合并这些值:

代码语言:txt
复制
helm install mychart ./mychart --values custom-values.yaml

这将合并custom-values.yaml文件中的值到values.yaml文件中。

总结起来,通过使用values.yaml文件和--set、--set-string、--values标志,可以在helm中合并/重写值来自定义部署配置。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 基于helm部署Kubernetes下的高可用redis

    笔者用过 helm,它是Kubernetes下的包管理器,相当于apt-get、yum、brew这样的软件工具,用的是 helm(v2)版本,下面所介绍的 helm指的都是 v2 版本。通过使用 helm 解决了安装和部署复杂的 Kubernetes 应用,比如经常使用的 memecache、redis、MySQL。也解决过部分粉丝在用 helm 部署程序过程遇到一些问题,其中有几个粉丝一再建议我写一篇文章介绍下 helm,其实我是不想写的,究其原因有两点,第一、helm 官网和镜像仓库介绍非常详尽,当然安装也非常简单。第二、helm 如果想深入使用,必须搞明白 go 的模板语法,对于大多数用户来说,只是用来管理不同环境的编排文件,现在又要学一门模板语言,有一定的学习成本,所以就这点我是不太认可 helm 的。当然很多人会说,不如直接选择 Kubernetes 集成的 Kustomize,不用安装任何多余程序,即可完成不同环境应用配置和打包,但从本质上来说,helm 和 Kustomize 是有一定区别的,Kustomize 利用base+overlay的思想生成最终的描述文件,对原有yaml 编排文件不用怎么修改,即可无缝集成,使用上更简单。而 helm 则又分为仓库、helm 客户端、tiller 服务端,使用过程中,在底层定义模板,外层赋值。使用起来更复杂,但不可否认 helm 更强大,它不仅能够完成不同环境应用的打包和配置,更是对应用进行全生命周期的管理,比如查看历史部署版本、回退、升级等;另外支持应用程序的查找、以及应用程序依赖关系定制化等功能。之前介绍过 Kustomize 的使用,下文结合 redis-ha 安装部署介绍下 helm,使你对 Kustomize 和 helm 之间的功能点有一个更清楚的认识。

    02
    领券