homeserver/roles/mgrote.sealed-secrets/README.md
mg 135bd53414 k3s - Basics (#423)
Co-authored-by: Michael Grote <michael.grote@posteo.de>
Reviewed-on: #423
2022-11-04 20:58:37 +01:00

49 lines
1.3 KiB
Markdown

# mgrote.sealed-secrets
Diese Rolle installiert das kubeseal-Binary und hinterlegt den Private-Key im Cluster.
Der Key ist im Keepass im Eintrag unter "Notes" abgelegt. Sollten die Secrets neu verschlüsselt werden ist hier wieder der aktuelle Private-Key abzulegen.
Siehe: https://github.com/bitnami-labs/sealed-secrets#how-can-i-do-a-backup-of-my-sealedsecrets
## Backup
`kubectl get secret -n kube-system -l sealedsecrets.bitnami.com/sealed-secrets-key -o yaml >main.key`
## Restore
```
kubectl apply -f main.key
kubectl delete pod -n kube-system -l name=sealed-secrets-controller
```
## Erstellen eines verschlüsselten Secrets
- Wichtig ist "stringData", wird nur "data" verwendet ist der Inhalt base64 zu enkodieren.
1. lege Secret mit Klartext VALUE als Datei() an
```
kind: Secret
apiVersion: v1
metadata:
name: NAME_DES_SECRETS
namespace: drone
stringData:
ICH_BIN_DER VARIABLEN_NAME: ICH_BIN_DAS_PASSWORT
```
2. diese Datei mit kubeseal verschlüsseln
```
cat <datei> | kubeseal --format=yaml
```
3. den Inhalt dann als Secret im Repo ablegen ablegen
## Verwenden des Secrets
```
- name: DRONE_RPC_SECRET
valueFrom:
secretKeyRef:
name: NAME_DES_SECRETS
key: ICH_BIN_DER VARIABLEN_NAME
```