#kubernetes #airflow #kubernetes-helm
#kubernetes #воздушный поток #kubernetes-рулевой
Вопрос:
Я развертываю airflow в Kubernetes, используя: https://github.com/helm/charts/tree/master/stable/airflow
Я пытаюсь подключить свою внешнюю базу данных PostgreSQL, изменив values.yml:
externalDatabase:
## the type of external database: {mysql,postgres}
##
type: postgres
## the host of the external database
##
host: <HOST>
## the port of the external database
##
port: 5432
## the database/scheme to use within the the external database
##
database: airflow
## the user of the external database
##
user: <USER>
## the name of a pre-created secret containing the external database password
##
passwordSecret: ""
## the key within `externalDatabase.passwordSecret` containing the password string
##
passwordSecretKey: ""
## the connection properties for external database, e.g. "?sslmode=require"
properties: "?sslmode=require"
Но он запрашивает passwordSecret
и passwordSecretKey
.
Как я могу создать секретный пароль в Kubernetes?
passwordSecretKey
является ли пароль для пользователя airflow?
Комментарии:
1. passwordSecretKey — это пароль для пользователя airflow? Какое значение я должен установить для него?
Ответ №1:
Самый простой способ — следовать инструкциям здесь.
Создайте файл yaml с именем mysecretcreator.yaml
apiVersion: v1
kind: Secret
metadata:
name: mysecret
type: Opaque
data:
username: YWRtaW4=
password: MWYyZDFlMmU2N2Rm
А затем запустите kubectl apply -f mysecretcreator.yaml
После создания секрета добавьте следующее к пользовательским значениям.yaml
## the name of a pre-created secret containing the external database password
##
passwordSecret: "mysecret"
Комментарии:
1. Что мы должны поставить для passwordSecretKey:»»?
Ответ №2:
Поскольку вы определили свое имя пользователя как строку, вы можете просто ввести пароль в поле data / StringData в secrets .файл yaml. Использование строковой ссылки для передачи данных
apiVersion: v1
kind: Secret
metadata:
name: airflow-postgres-key
namespace: airflow
type: Opaque
stringData:
passwd: mypas_sword=
Вы можете ссылаться на них в своих значениях.файл yaml как
## the user of the external database
##
user: <USER_Name>
## the name of a pre-created secret containing the external database password
##
passwordSecret: airflow-postgres-key
## the key within `externalDatabase.passwordSecret` containing the password string
##
passwordSecretKey: passwd