You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Parent-Chart的values.yaml为Child-Chart设置apiVersion值?

解决Helm父Chart向子Chart传递apiVersion无效的问题

核心排查与修复步骤

  • 确认子Chart模板是否正确引用参数
    子Chart(zookeeper)的模板文件必须明确使用.Values.apiVersion读取配置。比如在Deployment或自定义资源模板中,apiVersion字段需写成:

    apiVersion: {{ .Values.apiVersion }}
    

    若子Chart模板硬编码apiVersion或未引用该配置项,父Chart传递的值自然不会生效。

  • 更新父Chart依赖
    在父Chart目录下执行命令,拉取/更新子Chart依赖:

    helm dependency update parentChart/
    

    执行后父Chart的charts/目录会生成子Chart的压缩包或目录,Helm才能正确识别并传递values配置。

  • 验证父Chart的values层级匹配性
    父Chartvalues.yaml中zookeeper.apiVersion的名称必须和依赖配置里的name: zookeeper完全一致(大小写敏感),当前配置层级是正确的,但如果子Chart的参数名不是apiVersion,需同步修改父Chart的配置路径。

  • 命令行传参快速验证
    跳过父Chart的values.yaml,直接用命令行传参测试是否生效:

    helm template parentChart . --set zookeeper.apiVersion=v2
    

    若此方式生效,说明父Chart的values.yaml配置无问题,大概率是之前未更新依赖导致配置未被读取。

  • 检查子Chart的可覆盖性设置
    子Chartvalues.yaml中apiVersion: ""允许被父Chart覆盖,但需确认子Chart的Chart.yaml未设置immutableValues禁止修改该参数。

内容的提问来源于stack exchange,提问作者Sathish Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 19:22:08