[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
|
```yaml
|
||||||
kubectl apply -n sandbox -f - <<"EOF"
|
kubectl apply -f - <<"EOF"
|
||||||
apiVersion: apps/v1
|
apiVersion: apps/v1
|
||||||
kind: Deployment
|
kind: Deployment
|
||||||
metadata:
|
metadata:
|
||||||
name: vault-test
|
name: vault-test
|
||||||
|
namespace: sandbox
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: 1
|
||||||
selector:
|
selector:
|
||||||
@@ -80,24 +81,50 @@ spec:
|
|||||||
vault.security.banzaicloud.io/vault-addr: "https://vault.avroid.tech" # внешний адрес vault
|
vault.security.banzaicloud.io/vault-addr: "https://vault.avroid.tech" # внешний адрес vault
|
||||||
vault.security.banzaicloud.io/vault-role: "sandbox" # роль из под которой будем ходить в vault
|
vault.security.banzaicloud.io/vault-role: "sandbox" # роль из под которой будем ходить в vault
|
||||||
vault.security.banzaicloud.io/vault-skip-verify: "false" # проверять сертификат или нет на стороне 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-tls-secret: "vault-tls" # сертификат для vault если он самоподписанный
|
||||||
# vault.security.banzaicloud.io/vault-agent: "false" # запускать акента который будет отслеживать изменения секрета
|
# 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/vault-path: "avroid-office" # название kubernetes аутентификации в vault
|
||||||
|
vault.security.banzaicloud.io/run-as-user: "100" # пользователь нужен что бы прочитать vault токен (100 - consul template)
|
||||||
spec:
|
spec:
|
||||||
serviceAccountName: vault # имя сервиса аккаунта - должен быть в каждом namespace
|
serviceAccountName: vault # имя сервиса аккаунта - должен быть в каждом namespace
|
||||||
containers:
|
containers:
|
||||||
- name: alpine
|
- name: alpine
|
||||||
image: 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:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: 50m
|
cpu: 50m
|
||||||
memory: 32Mi
|
memory: 32Mi
|
||||||
limits:
|
limits:
|
||||||
cpu: 100m
|
cpu: 50m
|
||||||
memory: 64Mi
|
memory: 32Mi
|
||||||
env:
|
env: # вариант когда секрет будет в переменную окружения
|
||||||
- name: POSTGRES_DSN # переменная окружения куда попадет секрет
|
- name: FOO # переменная окружения куда попадет секрет
|
||||||
value: vault:prj-tavro-cloud-backend/data/k8s/avroid.local/ns-tarvo-cloud-dev/svc-messenger-core-api#POSTGRES_DSN # путь до секрета
|
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
|
EOF
|
||||||
```
|
```
|
||||||
|
|||||||
Reference in New Issue
Block a user