温馨提示:本文翻译自stackoverflow.com,查看原文请点击:prometheus - helm values from kubernetes secrets?
kubernetes kubernetes-helm prometheus prometheus-operator

prometheus - 从kubernetes秘密中获得掌舵价值?

发布于 2020-04-17 12:48:09

我正在使用此图表:https : //github.com/helm/charts/tree/master/stable/prometheus-mongodb-exporter

该图表需要MONGODB_URI环境变量或mongodb.urivalues.yaml文件中填充,因为这是一个连接字符串,所以我不想将其检入到git中。我正在考虑kubernetes秘密,并提供kubernetes秘密的连接字符串。我无法成功找到该解决方案。

我还尝试创建另一个头盔图表,并使用该头盔图表作为该图表的依赖项并提供MONGODB_URIfrom的值,secrets.yaml但这也不起作用,因为在prometheus-mongodb-exporter图表MONGODB_URI中定义为必需值,然后将其传递到secrets.yaml该图表内的文件中,因此因此,永远不会安装图表。

实现此目标的最佳方法是什么?

查看更多

提问者
Asav Patel
被浏览
62
Kamol Hasan 2020-02-04 14:02

解决方案1:创建自定义图表


  1. secret.yaml从图表的模板目录中删除
  2. secret自行创建k8 ,可能命名为cumstom-secret
  3. 此处编辑deployment.yaml
       - name: MONGODB_URI
         valueFrom:
           secretKeyRef:
             name: custom-secret ## {{ include "prometheus-mongodb-exporter.fullname" . }}##
             key: mongodb-uri

解决方案2:使用原始图表


  1. 对于设置一个虚拟值mongodb.urivalue.yaml
  2. --set在安装图表时,请使用标志用原始值覆盖虚拟值。因此,您git将没有历史记录。
$ helm install prometheus-mongodb-exporter stable/prometheus-mongodb-exporter --set mongodb.uri=******