Veröffentlichte Charts auf Artifact Hub finden und installieren
Suche ein Chart, das jemand anderes schon geschrieben hat, prüfe es vor der Installation und überschreibe nur, was du brauchst.
Die meiste Infrastruktur-Software, die du in Kubernetes betreiben würdest, Monitoring-Stacks, Ingress-Controller, Datenbanken, hat bereits ein veröffentlichtes Chart. Diese Anleitung behandelt, wie du eines findest, prüfst, was es tatsächlich installiert, bevor du dich festlegst, und seine Standardwerte für deine Umgebung überschreibst.
Suchen, ohne zuerst ein Repository hinzuzufügen
helm search hub prometheus
helm search hub fragt Artifact Hub ab, den CNCF-Index für Charts (und andere Cloud-native Pakete) aus vielen verschiedenen Repositories, ohne dass dieses Repository zuvor lokal hinzugefügt sein muss. Das ist der schnellste Weg zu sehen, was es gibt und wer es veröffentlicht. Ein direkter Besuch von artifacthub.io bietet denselben Katalog mit besserer Oberfläche, um Optionen zu vergleichen, die README eines Charts zu lesen und zu prüfen, wie aktuell es ist. (Diese Suche lief früher über einen separaten „Helm Hub“; dieser Dienst wurde 2020 eingestellt und in Artifact Hub überführt, helm search hub fragt Artifact Hub also schon seit Jahren ab.)
Ein Repository hinzufügen und durchsuchen, was hinzugefügt wurde
Hast du eine Quelle gewählt, füge sie hinzu und suche lokal:
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
helm search repo prometheus-community
helm repo add registriert ein Chart-Repository unter einem Namen; helm repo update aktualisiert Helms lokalen Index dessen, was jedes hinzugefügte Repository anbietet. helm search repo (beachte: repo, nicht hub) durchsucht nur Repositories, die du bereits hinzugefügt hast, was du im Alltag nutzt, sobald du weißt, woher deine Charts kommen. helm repo list zeigt alles, was aktuell registriert ist.
Ein Chart vor der Installation untersuchen
Installiere ein Chart nie blind, besonders eines mit weitreichenden Berechtigungen oder eines, das Speicher verwaltet:
helm show chart prometheus-community/prometheus
helm show readme prometheus-community/prometheus
helm show values prometheus-community/prometheus
show chart liefert die Metadaten (Version, Maintainer, Abhängigkeiten). show readme sind die eigenen Installations- und Konfigurationshinweise des Herausgebers, meist der schnellste Weg zu lernen, was ein Chart erwartet. show values gibt seine gesamte Standard-values.yaml aus, die echte Referenz dafür, was du überschreiben kannst, vollständiger als jede README.
Mit eigenen Overrides installieren
helm install monitoring prometheus-community/prometheus \
-n monitoring --create-namespace \
--set server.retention=15d \
--set alertmanager.persistentVolume.size=10Gi
--create-namespace erspart einen separaten kubectl create namespace-Schritt. Alles aus der Anleitung zu umgebungsspezifischen Values gilt auch hier: Für alles jenseits eines schnellen Tests schreibe deine Overrides in eine Values-Datei und übergib sie mit -f, statt --set-Flags anzuhäufen, damit das, was du installiert hast, aus einer Datei in der Versionskontrolle reproduzierbar ist.
# monitoring-values.yaml
server:
retention: 15d
alertmanager:
persistentVolume:
size: 10Gi
helm upgrade --install monitoring prometheus-community/prometheus \
-n monitoring --create-namespace -f monitoring-values.yaml
Eine Version bewusst pinnen
Ohne --version nutzt helm install die neueste verfügbare Chart-Version, die sich ändern kann zwischen dem Zeitpunkt, an dem du eine Values-Datei schreibst, und dem, an dem du den Befehl tatsächlich ausführst:
helm search repo prometheus-community/prometheus --versions
helm install monitoring prometheus-community/prometheus --version 25.8.0 -n monitoring
Eine Version zu pinnen ist Standardpraxis für alles jenseits eines lokalen Experiments, aus demselben Grund, aus dem du einen Container-Image-Tag pinnst, statt auf latest zu schwimmen: Es ist der Unterschied zwischen einem Deployment, das du reproduzieren kannst, und einem, bei dem du nur hoffen kannst, dass es dasselbe war wie letztes Mal.
Beliebte Anleitungen
-
Aufbau eines Helm-Charts: Charts, Values, Templates und Releases Die Ordnerstruktur, die jedes Chart teilt, und die drei Konzepte, die Helm zu mehr als einem YAML-Bündler machen. -
Dein erstes Helm-Chart aus bestehenden Manifesten erstellen Verwandle ein Deployment, einen Service und eine ConfigMap in ein templatiertes Chart, installiere und upgrade es dann. -
Ein Chart, viele Umgebungen: Values-Dateien für Dev, Staging und Prod Überschreibe nur, was sich zwischen Umgebungen unterscheidet, und verstehe die Reihenfolge, in der Values zusammengeführt werden. -
Releases verwalten: Installieren, Upgraden, Zurückrollen und Deinstallieren Die Befehle, die den gesamten Lebenszyklus eines Releases abdecken, und wie die Revisionshistorie Rollback möglich macht.