Cette page est affichée en anglais. Une traduction française est en cours.
ConfigsApr 11, 2026·3 min de lecture

Helm — The Package Manager for Kubernetes

Helm is the package manager for Kubernetes. Helps you manage Kubernetes applications via Helm Charts, which define, install, and upgrade even the most complex Kubernetes apps. The de facto way to distribute production-grade K8s software.

Introduction

Helm is the package manager for Kubernetes. It helps you manage Kubernetes applications through Helm Charts, which are templated YAML files that describe a related set of Kubernetes resources. Helm 3 removed Tiller (server-side component) making it simpler and more secure.

What Helm Does

  • Charts — packaged templated Kubernetes manifests
  • Values — override defaults per install
  • Templates — Go template language for dynamic resources
  • Releases — named install instances of a chart
  • Rollbacks — revert to a previous release
  • Dependencies — charts can depend on other charts
  • Hooks — pre-install, post-upgrade lifecycle
  • Repositories — share and discover charts
  • OCI registry — store charts in OCI-compliant registries

Architecture

Helm 3 is a pure client-side tool (no Tiller). helm install renders the templates locally, applies manifests to the cluster via the Kubernetes API, and stores release metadata as Kubernetes Secrets. No server-side component with cluster-admin rights.

Self-Hosting

CLI tool — runs on developer workstation or CI. Charts can be hosted anywhere:

  • ChartMuseum — open-source chart repo
  • Harbor — container registry with Helm chart support
  • GitHub Pages — via helm repo index
  • Any OCI registry — Docker Hub, GHCR, ECR

Key Features

  • Templated manifests
  • Release tracking
  • Rollback support
  • Chart dependencies
  • Lifecycle hooks
  • Values hierarchy (CLI > values file > defaults)
  • Chart testing (helm test)
  • OCI registry support
  • Public chart hubs (Artifact Hub)

Comparison

Tool Approach Templating Rollbacks
Helm Template + release Go templates Yes
Kustomize Overlay + base No templates Manual
Jsonnet Programmable JSON Jsonnet Manual
Pulumi Programming lang Any language Via state
Cdk8s TypeScript/Python Code Via state

FAQ

Q: Helm vs Kustomize? A: Helm is great for distributing generic software (customize via values); Kustomize handles per-environment differences (dev/stage/prod overlays). They are often combined: Helm provides defaults, Kustomize applies environment-specific patches.

Q: Templates are too complex? A: Go templates do have a learning curve. For complex logic, use the Lua-like extensions Helm 3 supports, or switch to Cue/Pulumi/Jsonnet.

Q: v2 vs v3? A: v3 removed Tiller (the server component), greatly improving security and simplicity. v2 is EOL; new projects must use v3.

Sources

Discussion

Connectez-vous pour rejoindre la discussion.
Aucun commentaire pour l'instant. Soyez le premier à partager votre avis.

Actifs similaires