[Book] [OK!] GitOps Cookbook: 08. Advanced Topics: 8.1 Encrypt Sensitive Data (Sealed Secrets)
Задача:
Зашифровать Secret в Git
Делаю:
2025.12.04
Установка kubeseal и контроллера
$ kubectl create secret generic pacman-secret \
--from-literal=user=pacman \
--from-literal=pass=pacman
$ kubectl get secret pacman-secret -o yaml
$ kubectl get secret pacman-secret -o yaml \
| kubeseal -o yaml > pacman-sealedsecret.yaml
$ cat pacman-sealedsecret.yaml
Отправляю его в репо:
$ kubectl delete secret pacman-secret -n default -o yaml
$ argocd app create pacman \
--repo https://github.com/wildmakaka/pacman-kikd-manifests.git \
--path 'k8s/sealedsecrets' \
--dest-server https://kubernetes.default.svc \
--dest-namespace default \
--sync-policy auto
$ argocd app list
$ argocd app sync pacman
Пароли лежат в репо в зашифрованном виде, а на сервере в расшифрованном.
$ argocd app delete pacman