# Vault test Настраиваем получение логопаса в под из внешнего vault-сервера ## Общий порядок действий 1. поднять vault сервер 2. поднять heml-чарт 3. настроить подключение из куба в vault 4. добавить в vault тестовые секреты, запустить тестовый деплоймент и проверить что секреты получены ### 1. запуск vault в докере 1. `./start.sh` 2. `export VAULT_ADDR=https://vault.domain.com` 3. `vault login` ### 2. запуск heml-чарта 1. прописываем в переменных адрес vault-сервера 2. запускаем чарт `helm upgrade --install --create-namespace -n vault vault helm/vault` ### 3. подключение из куба в vault 1. `vault auth enable kubernetes` 2. подсмотреть имя у VAULT_HELM_SECRET_NAME=vault-token-xxxxx 3. `TOKEN_REVIEW_JWT=$(kubectl get secret $VAULT_HELM_SECRET_NAME -n vault --output='go-template={{ .data.token }}' | base64 --decode)` 4. `KUBE_CA_CERT=$(kubectl config view --raw --minify --flatten --output='jsonpath={.clusters[].cluster.certificate-authority-data}' | base64 --decode)` 5. `KUBE_HOST=$(kubectl config view --raw --minify --flatten --output='jsonpath={.clusters[].cluster.server}')` 6. прописываем конфиг соединения ```bash vault write auth/kubernetes/config \ token_reviewer_jwt="$TOKEN_REVIEW_JWT" \ kubernetes_host="$KUBE_HOST" \ kubernetes_ca_cert="$KUBE_CA_CERT" \ issuer="https://kubernetes.default.svc.cluster.local" ``` 7. добавляем полиси доступа ```bash vault policy write vault-test - <