[DO-0] add docs (!86)
[DO-0] Co-authored-by: Rustam Tagaev <rustam.tagaev@avroid.tech> Co-authored-by: Denis Patrakeev <denis.patrakeev@avroid.team> Reviewed-on: https://git.avroid.tech/K8s/k8s-configs/pulls/86
This commit is contained in:
45
README.md
45
README.md
@@ -62,11 +62,12 @@ kubectl apply -f vault-service-account.yaml
|
||||
Простой пример для тестирования - в логах вы увидите свой секрет
|
||||
|
||||
```yaml
|
||||
kubectl apply -n sandbox -f - <<"EOF"
|
||||
kubectl apply -f - <<"EOF"
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: vault-test
|
||||
namespace: sandbox
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -80,24 +81,50 @@ spec:
|
||||
vault.security.banzaicloud.io/vault-addr: "https://vault.avroid.tech" # внешний адрес vault
|
||||
vault.security.banzaicloud.io/vault-role: "sandbox" # роль из под которой будем ходить в vault
|
||||
vault.security.banzaicloud.io/vault-skip-verify: "false" # проверять сертификат или нет на стороне vault
|
||||
# vault.security.banzaicloud.io/vault-tls-secret: "vault-tls" # сертификат для vault если он самоподписанный
|
||||
# vault.security.banzaicloud.io/vault-agent: "false" # запускать акента который будет отслеживать изменения секрета
|
||||
# vault.security.banzaicloud.io/vault-tls-secret: "vault-tls" # сертификат для vault если он самоподписанный
|
||||
# vault.security.banzaicloud.io/vault-agent: "false" # запускать агента который будет отслеживать изменения секрета
|
||||
vault.security.banzaicloud.io/vault-ct-configmap: vault-test-config # конфиг который будет обрабатывать consul template
|
||||
vault.security.banzaicloud.io/vault-path: "avroid-office" # название kubernetes аутентификации в vault
|
||||
vault.security.banzaicloud.io/run-as-user: "100" # пользователь нужен что бы прочитать vault токен (100 - consul template)
|
||||
spec:
|
||||
serviceAccountName: vault # имя сервиса аккаунта - должен быть в каждом namespace
|
||||
containers:
|
||||
- name: alpine
|
||||
image: alpine
|
||||
command: ["sh", "-c", "echo $POSTGRES_DSN && echo going to sleep... && sleep 10000"]
|
||||
command: ["sh", "-c", "echo ${FOO} && echo going to sleep... && sleep 10000"]
|
||||
resources:
|
||||
requests:
|
||||
cpu: 50m
|
||||
memory: 32Mi
|
||||
limits:
|
||||
cpu: 100m
|
||||
memory: 64Mi
|
||||
env:
|
||||
- name: POSTGRES_DSN # переменная окружения куда попадет секрет
|
||||
value: vault:prj-tavro-cloud-backend/data/k8s/avroid.local/ns-tarvo-cloud-dev/svc-messenger-core-api#POSTGRES_DSN # путь до секрета
|
||||
cpu: 50m
|
||||
memory: 32Mi
|
||||
env: # вариант когда секрет будет в переменную окружения
|
||||
- name: FOO # переменная окружения куда попадет секрет
|
||||
value: vault:sandbox/data/k8s/vault-test#FOO # путь до секрета
|
||||
---
|
||||
# вариант когда секрет нужно поместить в файл конфигурации приложения
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: vault-test-config # используется в аннотации vault.security.banzaicloud.io/vault-ct-configmap
|
||||
namespace: sandbox
|
||||
data:
|
||||
config.hcl: |
|
||||
vault {
|
||||
vault_agent_token_file = "/vault/.vault-token"
|
||||
retry {
|
||||
backoff = "1s"
|
||||
}
|
||||
}
|
||||
template {
|
||||
contents = <<EOH
|
||||
BAR: baz
|
||||
{{- with secret "sandbox/data/k8s/vault-test" }}
|
||||
FOO: {{ .Data.data.FOO }}
|
||||
{{ end }}
|
||||
EOH
|
||||
destination = "/vault/secrets/config.yaml" # тут указан конечный файл конфигурации вашего приложения
|
||||
}
|
||||
EOF
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user