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

Helm通过--set覆盖子Chart的Deployment副本数问题

Helm伞形Chart中通过--set覆盖子Chart配置的正确方法

一、修改子Chart的Deployment副本数

首先确认子Chart app1 的Values结构和模板引用逻辑:

  • 检查 webapp/charts/app1/values.yaml,确认副本数的配置路径是 deployment.spec.replicas
  • 检查 app1 的Deployment模板(或引用的 _deploy.tpl),确认副本数字段引用的是 {{ .Values.deployment.spec.replicas }}

满足上述条件后,使用以下命令即可覆盖副本数:

helm install ./webapp --set app1.deployment.spec.replicas=4 --dry-run

如果子Chart的副本数直接定义在 .Values.replicas 层级(而非嵌套在 deployment.spec 下),则命令调整为:

helm install ./webapp --set app1.replicas=4 --dry-run

二、覆盖子Chart的Deployment注解

针对模板中使用 {{- toYaml .template.metadata.annotations | nindent 8 }} 引入注解的场景,需根据子Chart的Values结构指定注解路径:

1. 覆盖单个注解键值对

helm install ./webapp --set app1.deployment.metadata.annotations."kubernetes.io/description"="自定义app1部署" --dry-run

(注:包含特殊字符的注解键需用双引号包裹)

2. 覆盖多个注解

helm install ./webapp \
  --set app1.deployment.metadata.annotations."key1"="value1" \
  --set app1.deployment.metadata.annotations."key2"="value2" \
  --dry-run

3. 替换整个注解块

helm install ./webapp --set app1.deployment.metadata.annotations={key1:value1,key2:value2} --dry-run

三、验证配置生效

添加 --debug 参数查看渲染后的模板内容,确认配置是否已正确覆盖:

helm install ./webapp --set app1.deployment.spec.replicas=4 --dry-run --debug

在输出中定位到 app1 的Deployment片段,检查副本数和注解字段是否符合预期。

内容的提问来源于stack exchange,提问作者Joshua Caggiano

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 14:12:26