Recapitulare și curățare
Starea finală
Înainte de curățare, inspectați toate componentele:
kubectl get deployments,statefulsets,pods,services,pvc -n cc-lab3
kubectl get endpointslices -n cc-lab3
kubectl get events -n cc-lab3 --sort-by=.metadata.creationTimestamp
Ar trebui să aveți:
- două replici Ticketing API gestionate de un Deployment
- o instanță
postgres-0gestionată de un StatefulSet - câte un Service pentru API și PostgreSQL
- PVC-ul
data-postgres-0în stareaBound - toate Pod-urile în starea
RunningșiReady.
Ce am obținut
Am pornit de la aplicația stateless din Laboratorul 2 și am adăugat:
- configurație externă prin ConfigMap
- credențiale furnizate prin Secret
- PostgreSQL cu identitate stabilă
- un PersistentVolumeClaim pentru date
- startup, liveness și readiness probes cu roluri diferite
- requests, limits și security contexts
- experimente controlate de defect și recuperare
- verificarea persistenței după recrearea Pod-ului.
Ideea centrală este că Pod-urile sunt înlocuibile, dar starea importantă nu trebuie să depindă de ciclul lor de viață.
Curățare
Opriți port-forward cu Ctrl+C, apoi ștergeți clusterul:
kind delete cluster --name cc-lab3
atenție
Ștergerea unui StatefulSet nu șterge în mod implicit toate PVC-urile asociate. În acest laborator ștergem întregul cluster local, inclusiv resursele sale de stocare.
Legătura cu laboratorul următor
Aplicația are acum suficiente semnale operaționale pentru a fi observată. În laboratorul următor vom colecta și corela informații despre comportamentul ei, folosind logs, metrics și traces.