Helm est le gestionnaire de paquets standard pour Kubernetes. Il permet de packager, partager et déployer des applications complexes de manière reproductible.


Notes détaillées

NoteContenu
Structure d’un chartArborescence, Chart.yaml, values.yaml, templates/, charts/, workflow
Types et pluginsApplication vs Library vs Umbrella charts, plugins helm-diff, helm-unittest, helm-push

Concepts clés

TermeDéfinition
ChartLe modèle — le code source packagé
ReleaseL’instance déployée sur le cluster (une installation d’un Chart)
ValuesLes paramètres de configuration injectés dans les templates
RepositoryServeur qui héberge des packages Charts (.tgz)

Anatomie d’un Chart

mon-chart/
├── Chart.yaml        ← "Je dis qui je suis et de quoi j'ai besoin"
├── values.yaml       ← "Je propose des options de configuration"
├── charts/           ← sous-charts (dépendances)
└── templates/
    ├── _helpers.tpl  ← "Je centralise les calculs et noms complexes"
    ├── deployment.yaml
    ├── service.yaml
    └── ingress.yaml  ← souvent conditionnel : if .Values.ingress.enabled

Types de charts

TypeUsage
ApplicationDéploiement standard (Pods, Services, Ingress)
LibraryPartage de fonctions entre charts — ne déploie rien
UmbrellaOrchestre plusieurs sous-charts (stack complète)

En relation avec