Helm vereinfacht das Application-Deployment in Kubernetes — parametrisierte Templates, Versionierung und Sharing über Chart-Repositories. Von manuellen YAML-Dateien zu reproduzierbaren Deployments.
YAML-Hölle in Kubernetes¶
Das Deployment einer Anwendung in Kubernetes erfordert dutzende YAML-Dateien — Deployment, Service, ConfigMap, Secret, Ingress, PVC. Werte unterscheiden sich pro Umgebung (Dev, Staging, Prod), aber die Struktur ist dieselbe.
Helm löst dieses Problem — es ist ein Package Manager für Kubernetes. Ein Chart ist ein Paket parametrisierter Templates; eine Values-Datei definiert die Konfiguration für eine bestimmte Umgebung.
Anatomie eines Helm Charts¶
Helm-Chart-Struktur:
Chart.yaml # Chart metadata
values.yaml # Default values
templates/
deployment.yaml # Kubernetes Deployment template
service.yaml # Service template
ingress.yaml # Ingress template
_helpers.tpl # Shared template functions
Ein Template mit Go-Template-Syntax:
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}-{{ .Chart.Name }}
spec:
replicas: {{ .Values.replicaCount }}
template:
spec:
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
resources:
limits:
cpu: {{ .Values.resources.limits.cpu }}
memory: {{ .Values.resources.limits.memory }}
Helm-Workflow¶
Grundlegende Helm-Befehle:
# Helm Charts: Package Manager für Kubernetes
helm install my-release ./my-app \
--set image.tag=v1.2.3 \
--values production-values.yaml
# Upgrade
helm upgrade my-release ./my-app \
--set image.tag=v1.3.0
# Rollback
helm rollback my-release 1
# List releases
helm list
Helm pflegt eine Release-Historie — Rollback auf eine vorherige Version ist ein einziger Befehl. Ein Release ist eine Instanz eines Charts im Cluster.
Chart Repository und Sharing¶
Helm Charts können über Repositories geteilt werden — analog zu einer npm-Registry für Kubernetes:
- stable/ — offizielle Community Charts (nginx, PostgreSQL, Redis, Prometheus)
- Privates Repository — ChartMuseum oder S3-basiert für interne Charts
- Dependencies — ein Chart kann von anderen Charts abhängen (requirements.yaml)
Die Kombination Helm + CI/CD Pipeline = reproduzierbare, auditierbare Deployments über alle Umgebungen hinweg.
Fazit: Der Standard für Kubernetes-Deployment¶
Helm wird zum De-facto-Standard für Packaging und Deployment von Kubernetes-Anwendungen. Parametrisierte Templates, Versionierung und Rollback vereinfachen den Betrieb erheblich. Wir empfehlen Helm Charts für jedes Kubernetes-Projekt von Anfang an.
Brauchen Sie Hilfe bei der Implementierung?
Unsere Experten helfen Ihnen bei Design, Implementierung und Betrieb. Von der Architektur bis zur Produktion.
Kontaktieren Sie uns