helm 不使用 values.yaml 文件
Posted
技术标签:
【中文标题】helm 不使用 values.yaml 文件【英文标题】:helm doesnt use the values.yaml file 【发布时间】:2020-04-15 16:02:13 【问题描述】:我正在使用 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
根目录下的图表文件夹中看到了
现在在根上运行我运行 helm helm install mon -f values.yaml . -n mon
它采用默认图表值,而不是我的 values.yaml
配置(我只看到 1 个版本为 0.19 的警报管理器实例)
我在这里错过了什么?
顺便说一句,我看到模板中的配置文件配置正确但是在安装过程中它没有使用values.yaml
...
【问题讨论】:
【参考方案1】:我认为应该是这样的:
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
【讨论】:
好的,我尝试这样做但是我收到了这个错误:Error: error unpacking values.yaml in v2chart: validation: chart.metadata is required
您可以将您的chart.yaml
编辑到问题中吗?和charts/index.yaml
?
感谢这是我的错,不知何故我将 values.yaml
复制到了图表 yaml
我有一个问题,假设我需要创建这个图表,这取决于我的内部图表(一些其他自定义图表作为预先请求)它建议如何处理这种情况?
添加到requirements.yaml
?如果我理解这个问题。您可能想创建另一个问题;)以上是关于helm 不使用 values.yaml 文件的主要内容,如果未能解决你的问题,请参考以下文章
helm values.yaml 中的 alerting_rules.yml
Promtail 基本身份验证在 helm values.yaml 中使用 kubernetes 秘密
我可以使用 _helpers.tpl 中的函数在 helm 图表中填写 values.yaml 吗?
Helm / kube-prometheus-stack:我可以在 values.yaml 中为导出器创建规则吗?
helm Prometheus values.yaml 的 alertmanager.yml 部分中的 external_labels 配置出错