如何通过ArgoCD重写Metric Server的Helm Values配置?
在ArgoCD中重写Helm Chart默认配置值
在ArgoCD里通过Helm安装应用时,重写默认配置值主要有两种方式,可根据需求选择:
1. 完全替换默认Values文件
如果需要彻底替换Helm Chart的默认配置,可通过以下两种方式实现:
- 指定自定义Values文件:把完整的自定义配置写入一个YAML文件(比如
custom-values.yaml),放在ArgoCD可访问的代码仓库路径下,然后在ArgoCD应用配置中指定该文件:
helm: valueFiles: - ./custom-values.yaml
- 直接编写完整配置:在
values块中写出所有需要的配置项,直接覆盖默认的Values内容:
helm: values: | args: - --kubelet-insecure-tls=true - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname replicaCount: 2 image: repository: k8s.gcr.io/metrics-server/metrics-server tag: v0.6.4
2. 部分字段覆盖(合并式重写)
如果只需要修改默认配置中的部分字段,直接在values块中指定要修改的字段路径即可,Helm会自动用你定义的值覆盖默认值:
- 重写数组类型字段:比如替换
args的完整内容(而非追加),直接写出完整的数组:
helm: values: | args: - --kubelet-insecure-tls=true - --kubelet-preferred-address-types=InternalIP
- 重写嵌套结构字段:比如修改资源限制配置:
helm: values: | resources: requests: cpu: 100m memory: 200Mi
如果需要给默认数组追加元素,可使用Helm的--set-json语法,在ArgoCD中通过parameters字段实现:
helm: parameters: - name: args value: '["--kubelet-insecure-tls=true", "--existing-arg-from-default"]' type: json
内容的提问来源于stack exchange,提问作者Seba
相关产品推荐
相关产品推荐

