Beispiel-Dokumentation: Stateful Postgres
Ziel
Eine zustandsbehaftete Anwendung mit persistentem Storage, Initialisierung, Service-Discovery und Backup-Job betreiben.
Was gemacht wird
Das Lab erstellt eine PostgreSQL-Instanz als StatefulSet, legt Startdaten über eine ConfigMap an, speichert Daten in einem PVC und führt Backups über einen CronJob aus.
Typische Kommandos
kubectl apply -f manifests/
kubectl get pods,pvc,svc -n postgres-lab
kubectl describe statefulset postgres -n postgres-lab
kubectl create job manual-postgres-backup --from=cronjob/postgres-backup -n postgres-lab
Erfolg prüfen
postgres-0ist bereit.- Das PVC
data-postgres-0ist gebunden. - Ein manueller Backup-Job endet mit
Complete. - NetworkPolicies erlauben Backup-Traffic zu PostgreSQL, aber keinen allgemeinen Egress.
Typische Fehler
- Keine Default-StorageClass im Cluster.
- Secret-Werte werden versehentlich produktiv verwendet.
- Backup-Pods bekommen keinen DNS- oder Datenbank-Egress.