Хелм ценностей из кубернетес секретов? - PullRequest
0 голосов
/ 04 февраля 2020

Я использую эту диаграмму: https://github.com/helm/charts/tree/master/stable/prometheus-mongodb-exporter

Для этой диаграммы требуется MONGODB_URI переменная среды или mongodb.uri, заполненная в файле values.yaml, так как это строка подключения I не хочу регистрировать это в git. Я думал о секретах kubernetes и предоставлял строку соединения из секретов kubernetes. Мне не удалось успешно найти решение для этого.

Я также попытался создать еще одну диаграмму управления и использовать ее в качестве зависимости для этой диаграммы и предоставить значение для MONGODB_URI из secrets.yaml, но это также не работает, потому что в prometheus-mongodb-exporter диаграмма MONGODB_URI определяется как обязательное значение, которое затем передается в файл secrets.yaml внутри этой диаграммы, поэтому диаграмма зависимостей никогда не устанавливается из-за этого.

Что будет лучшим способом достижения этого?

1 Ответ

2 голосов
/ 04 февраля 2020

Решение 1. Создайте пользовательскую диаграмму


  1. Удалите secret.yaml из каталога шаблонов диаграммы.
  2. Создайте k8s secret самостоятельно, возможно с именем cumstom-secret
  3. Изменить deployment.yaml: здесь
       - name: MONGODB_URI
         valueFrom:
           secretKeyRef:
             name: custom-secret ## {{ include "prometheus-mongodb-exporter.fullname" . }}##
             key: mongodb-uri

Решение 2: Использовать исходную диаграмму


  1. Установите фиктивное значение для mongodb.uri в value.yaml.
  2. Используйте флаг --set, чтобы перезаписать фиктивное значение оригиналом при установке диаграммы. Итак, у вашего git не будет истории.
$ helm install prometheus-mongodb-exporter stable/prometheus-mongodb-exporter --set mongodb.uri=******
...