Я использую Kubernetes для развертывания панели инструментов Grafana, и я пытаюсь использовать Kubernetes Secrets для сохранения пароля администратора grafana .. Вот мой файл yaml для секрета
apiVersion: v1
kind: Secret
metadata:
name: $APP_INSTANCE_NAME-grafana
labels:
app.kubernetes.io/name: $APP_INSTANCE_NAME
app.kubernetes.io/component: grafana
type: Opaque
data:
# By default, admin-user is set to `admin`
admin-user: YWRtaW4=
admin-password: "$GRAFANA_GENERATED_PASSWORD"
значение для GRAFANA_GENERATED_PASSWORD закодировано в base64 и экспортируется как
export GRAFANA_GENERATED_PASSWORD="$(echo -n $PASSWORD | base64)"
где ПАРОЛЬ - это переменная, которую я экспортировал на свой компьютер, например export PASSWORD=qwerty123
Я пытаюсь передать значение GRAFANA_GENERATED_PASSWORD в файл yaml для секрета, например
envsubst '$GRAFANA_GENERATED_PASSWORD' > "grafana_secret.yaml"
Файл yaml после передачи значения в кодировке base64 выглядит так:
apiVersion: v1
kind: Secret
metadata:
name: kafka-monitor-grafana
labels:
app.kubernetes.io/name: kafka-monitor
app.kubernetes.io/component: grafana
type: Opaque
data:
# By default, admin-user is set to `admin`
admin-user: YWRtaW4=
admin-password: "cXdlcnR5MTIz"
После развертывания всех моих объектов я не смог войти в свою панель управления, используя пароль qwerty123, который закодирован правильно ..
Но когда я пытаюсь закодировать свой пароль, например, export GRAFANA_GENERATED_PASSWORD="$(echo -n 'qwerty123' | base64)
"
Он работает правильно, и я могу войти в свою панель управления, используя пароль qwerty123 .. Похоже, проблема возникает, когда я кодирую свой пароль с помощью переменной ... Но я закодировал свой пароль с помощью переменной
envsubst '$GRAFANA_GENERATED_PASSWORD' <original_code.yaml > "modified_code.yaml"
в способ, который вы опубликовали в своем примере, не сработал для меня. Вы используете автоматизацию для этого? Попробуйте проверить, правильно ли генерируется файл - person Mr.KoopaKiller   schedule 04.05.2020admin-user
в вашем yaml и проверить журнал подов графаны, есть специальная строка, в которой упоминается имя пользователя-администратора, который будет создан. Возможно, некоторые нежелательные символы скрыты в строке кодирования (\ n). - person Mr.KoopaKiller   schedule 06.05.2020