Concluzii și diagnostic
Ce am obținut
În acest laborator nu am schimbat logica aplicației. Am schimbat modul în care configurația Kubernetes este organizată și operată:
- manifestele au devenit template-uri
- valorile variabile au fost centralizate și validate
- numele resurselor depind de release, nu de constante copiate
- instalarea completă este realizată printr-o singură comandă
- fiecare upgrade produce o revizie observabilă
- rollback-ul poate reface rapid configurația unei revizii
- chart-ul poate fi testat, împachetat și folosit în automatizări.
Ideea centrală este că Helm gestionează o unitate coerentă de instalare, nu doar o colecție de fișiere YAML.
Probleme frecvente
| Simptom | Ce verificați |
|---|---|
values don't meet the specifications | cheia, tipul și limitele din values.schema.json |
cannot re-use a name that is still in use | helm list -A și namespace-ul release-ului |
ImagePullBackOff | repository-ul, tag-ul și vizibilitatea imaginii GHCR |
Pod API Running, dar 0/1 | /readyz, logurile API și disponibilitatea PostgreSQL |
PVC Pending | existența unui StorageClass implicit |
upgrade eșuat cu --atomic | helm history, evenimentele și statusul reviziei precedente |
| ConfigMap schimbat, dar Pod vechi | checksum-ul ConfigMap din Pod template |
Comenzile de bază pentru diagnostic sunt:
helm status ticketing -n cc-lab4
helm history ticketing -n cc-lab4
kubectl get pods,pvc -n cc-lab4
kubectl get events -n cc-lab4 --sort-by=.metadata.creationTimestamp
Întrebări de urmărit
- Ce parte din rezultat este responsabilitatea Helm și ce parte rămâne a Kubernetes?
- De ce chart version și appVersion evoluează separat?
- Ce valori ar trebui să difere între un mediu local și unul de producție?
- De ce rollback-ul manifestelor nu este echivalent cu rollback-ul bazei de date?
- Ce informații sensibile pot ajunge în istoricul unui release?
- Ce verificări ar trebui să ruleze într-un pipeline înainte de publicarea chart-ului?
Chart-ul obținut oferă o bază stabilă pentru automatizarea livrării și pentru adăugarea ulterioară a mecanismelor de observabilitate.