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

ArgoCD中Helm覆盖基础Chart值失效问题求助

问题排查与解决步骤

1. 先修正Chart依赖的低级错误

你贴的Chart.yml里依赖的是Keycloak的Chart,但你实际要部署的是Vault,这完全不匹配,先把依赖改对:

apiVersion: v2
name: vault
type: application
version: 1.0.0
dependencies:
  - name: vault
    version: "x.x.x" # 换成你要用的HashiCorp Vault Chart版本号
    repository: "https://helm.releases.hashicorp.com"

2. 搞清楚Vault Chart的参数路径

HashiCorp官方的Vault Chart里,控制Server组件Service创建的参数是server.service.enabled,如果是Sidecar Injector的Service,参数是injector.service.enabled,PVC的控制参数是server.persistence.enabled。你之前可能写错了参数层级,导致覆盖失效。

3. 在ArgoCD里正确传递覆盖值

有两种靠谱的方式:

方式一:直接在Application配置里写values

修改你的Argocd.yml,加上helm的values配置:

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: vault
  namespace: vault
spec:
  project: default
  source:
    chart: vault
    repoURL: https://github.com/myrepo.git
    targetRevision: HEAD
    helm:
      values: |
        server:
          service:
            enabled: false
          persistence:
            enabled: false # 关闭PVC
        injector:
          service:
            enabled: false # 不需要injector的话也关掉
  destination:
    server: "https://kubernetes.default.svc"
    namespace: kubeseal

方式二:在自定义Chart里放values.yml

在你自己的vault Chart根目录创建values.yml,写入要覆盖的配置:

server:
  service:
    enabled: false
  persistence:
    enabled: false
injector:
  service:
    enabled: false

4. 本地先验证模板渲染

先在本地跑一遍helm模板渲染,确认Service确实被去掉了:

helm template . --values values.yml --namespace kubeseal

如果输出里找不到Service相关的YAML,说明配置没问题,再提交代码到仓库。

5. 强制ArgoCD同步刷新

有时候ArgoCD会缓存旧的渲染结果,手动触发硬同步:

argocd app sync vault --hard-refresh

内容的提问来源于stack exchange,提问作者Param Jeet

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 03:55:30