3

我使用 helm 安装带有稳定图表的 prometheus 操作符,它按预期完成了所有配置,

这是values.yaml

grafana:
  enabled: true
alertmanager:
  enabled: true
  alertmanagerSpec:
    replicas: 3
  image:
    repository: quay.io/prometheus/alertmanager
    tag: v0.20.0

当我运行helm install mon stable/prometheus-operator -n mon -f values.yaml
一切正常时,我能够看到3警报管理器实例并在日志中看到版本0.20.0

现在我需要做一些我创建的配置和掌舵图helm create v2chart

将我的配置文件添加到template图表的文件夹并添加以下内容requirements.yaml并运行helm dep update ./v2chart

dependencies:
  - name: prometheus-operator
    version: 8.5.0
    repository: https://kubernetes-charts.storage.googleapis.com

我现在在根目录下的图表文件夹中看到prometheus-operator-8.5.0.tgz

现在在根上运行我运行 helmhelm install mon -f values.yaml . -n mon

它采用默认图表值而不是我的values.yaml配置(我只看到 1 个版本为 0.19 的警报管理器实例)

我在这里想念什么?

顺便说一句,我看到模板中的配置文件配置正确,但是values.yaml在安装过程中不需要...

4

1 回答 1

3

我认为它应该是这样的:

prometheus-operator: << this should match the name you are using in requirements.yaml for that particular subchart
  grafana:
    enabled: true
  alertmanager:
    enabled: true
    alertmanagerSpec:
      replicas: 3
    image:
      repository: quay.io/prometheus/alertmanager
      tag: v0.20.0

所以基本上你应该让它知道这些值是针对子图表的,而不是针对父图表的

https://helm.sh/docs/chart_template_guide/subcharts_and_globals/#overriding-values-from-a-parent-chart

于 2019-12-24T15:56:16.247 回答