如何指定父Helm图表的值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何指定父Helm图表的值相关的知识,希望对你有一定的参考价值。

我正在尝试配置Prometheus,它根据https://gitlab.com/charts/gitlab/blob/master/requirements.yaml包含在Gitlab Helm图表中

我的主要问题是如何配置Prometheus,因为以下values.yaml似乎被忽略:

global:
  registry:
    enabled: false
  # Disabling minio still requires to disable gitlab.minio or it will complain about "A valid backups.objectStorage.config.secret is needed"
  minio:
    enabled: false
  ingress:
    configureCertmanager: false
    class: "nginx"
 ...

prometheus:
  install: true
  rbac:
    create: true
  #kubeStateMetrics:
  #  enabled: true
  nodeExporter:
    enabled: true
  #pushgateway:
  #  enabled: true

  server:
    configMapOverrideName: prometheus-config
    configPath: /etc/prometheus/conf/prometheus.yml
    persistentVolume:
      enabled: true
      accessModes:
      - ReadWriteMany
      mountPath: /etc/prometheus/conf
      # Increase afterwards, this is for my tests
      size: 2Gi

  alertmanager:
    enabled: true
    # Overriding the default configuration with the existing one
    configMapOverrideName: "alertmanager"
    configFileName: config.yml
    persistentVolume:
      enabled: true
      accessModes:
        - ReadWriteMany
      mountPath: /prometheus
      # Increase afterwards, this is for my tests
      size: 2Gi
答案

检查了您提供的链接,似乎您正在尝试将值添加到父图表的values.yaml中,其中prometheus是一个从属子图表。

在父values.yaml文件中指定值完全按照上面提供的方式完成。

子图表的值应该进入与子图表完全相同的属性。

parentProp1: value
parentProp2: value
global:
  globalProp1: value
  globalProp2: value
subchart1:
  subchartProp1: value
  subchartProp2: value

现在在上面的一组值中,让我们假设有一个parentchart,它有一个名为subchart1的子图表。您需要了解以下几点:

  • parentProp1parentProp2只能在parentchart访问,而不能在subchart1访问Values.parentProp1Values.parentProp2
  • 可以从parent和subchart1访问全局属性Values.global.globalProp1
  • subchartProp1subchartProp2可以在Values.subchart1.subchartProp1中作为Values.subchart1.subchartProp2parentchart访问
  • subchartProp1subchartProp2可以在Values.subchartProp1中作为Values.subchartProp2subchart1访问

另外请不要忘记使用双花括号{{ Values.xyz }}的正确语法

我希望它有所帮助。 :)

以上是关于如何指定父Helm图表的值的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Grafana helm 图表中配置自定义 LDAP?

如何调试 Helm 图表错误,例如“将 YAML 转换为 JSON 时出错:yaml:在此上下文中不允许映射值”?

通过 Terraform Helm 提供程序和 Azure DevOps 部署 helm 图表,同时从 ACR 获取 helm 图表

如何使用 helm chart 向 prometheus-operator 添加 smtp 设置?

在Gitlab CI中部署Helm图表时,如何将节点主机名修复太长时间

Grafana 图表的 helm 模板转义值