GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Was ist Helm? Helm und Helmkarten erklärt

Einführung

Helm ist ein Kubernetes-Bereitstellungstool zum Automatisieren der Erstellung, Verpackung, Konfiguration und Bereitstellung von Anwendungen und Diensten in Kubernetes-Clustern.

Kubernetes ist ein leistungsstarkes Container-Orchestrierungssystem für die Anwendungsbereitstellung. Es gibt mehrere unabhängige Ressourcen, mit denen umgegangen werden muss, und jede erfordert eine dedizierte YAML-Manifestdatei.

In diesem Artikel wird erläutert, was Helm und Helm-Charts sind und wie die Anwendungsbereitstellung in Kubernetes automatisiert wird.

Was ist Helm?

Wenn Kubernetes ein Betriebssystem wäre, wäre Helm der Paketmanager. Ubuntu verwendet apt verwendet CentOS yum , und Kubernetes verwendet helm .

Helm stellt gepackte Anwendungen in Kubernetes bereit und strukturiert sie in Diagrammen. Die Diagramme enthalten alle vorkonfigurierten Anwendungsressourcen zusammen mit allen Versionen in einem einfach zu verwaltenden Paket.

Helm optimiert die Installation, das Upgrade, das Abrufen von Abhängigkeiten und das Konfigurieren von Bereitstellungen auf Kubernetes mit einfachen CLI-Befehlen. Softwarepakete werden in Repositories gefunden oder erstellt.

Warum brauchen wir Helm?

Kubernetes-Objekte sind schwierig zu verwalten. Mit hilfreichen Tools wird die Kubernetes-Lernkurve reibungslos und überschaubar. Helm automatisiert die Wartung von YAML-Manifesten für Kubernetes-Objekte, indem es Informationen in Diagramme packt und sie einem Kubernetes-Cluster ankündigt.

Helm verfolgt den versionierten Verlauf jeder Diagramminstallation und -änderung. Ein Rollback auf eine frühere Version oder ein Upgrade auf eine neuere Version wird mit verständlichen Befehlen durchgeführt.

Was können Sie mit Helm tun?

Helm ermöglicht es Softwareentwicklern, eine Umgebung auf einfachste Weise bereitzustellen und zu testen. Es wird weniger Zeit benötigt, um von der Entwicklung über das Testen bis zur Produktion zu gelangen.

Neben der Steigerung der Produktivität stellt Helm eine bequeme Möglichkeit für Entwickler dar, Anwendungen zu packen und zur Installation an Endbenutzer zu senden.

Wie funktioniert Helm?

Helm und Kubernetes funktionieren wie eine Client/Server-Anwendung. Der Helm-Client überträgt Ressourcen an den Kubernetes-Cluster. Die Serverseite hängt von der Version ab:Helm 2 verwendet Tiller, während Helm 3 Tiller losgeworden ist und sich vollständig auf die Kubernetes-API verlässt.

Was ist ein Helm-Diagramm?

Helm-Diagramme sind Helm-Pakete, die aus YAML-Dateien und Vorlagen bestehen, die in Kubernetes-Manifestdateien konvertiert werden. Diagramme können von jedem für jede Umgebung wiederverwendet werden, wodurch Komplexität und Duplikate reduziert werden. Ordner haben folgende Struktur:

Wie funktionieren Helm-Charts?

Die drei grundlegenden Konzepte von Helm-Diagrammen sind:

1. Diagramm – Vorkonfigurierte Vorlage von Kubernetes-Ressourcen.

2. Freigeben – Ein Diagramm, das mit Helm in einem Kubernetes-Cluster bereitgestellt wird.

3. Speicher – Öffentlich verfügbare Diagramme.

Der Arbeitsablauf besteht darin, Repositories zu durchsuchen für Diagramme und installieren Sie sie in Kubernetes-Clustern, indem Sie Releases erstellen .

Helm-Chart-Struktur

Die Dateien und Verzeichnisse eines Helm-Charts haben jeweils eine bestimmte Funktion:

Name Typ Funktion
Diagramme/ Verzeichnis Verzeichnis für manuell verwaltete Diagrammabhängigkeiten.
Vorlagen/ Verzeichnis Vorlagendateien werden in Golang geschrieben und mit Konfigurationswerten aus der Datei values.yaml kombiniert, um Kubernetes-Manifeste zu generieren.
Chart.yaml Datei Metadaten über das Diagramm, wie z. B. Version, Name, Suchbegriffe usw.
LIZENZ (optional) Datei Lizenz für das Diagramm im Klartextformat.
README.md (optional) Datei Menschlich lesbare Informationen für die Benutzer der Karte.
requirements.yaml (optional) Datei Liste der Diagrammabhängigkeiten.
values.yaml Datei Standardkonfigurationswerte für das Diagramm.

Erstellen Sie Helm-Diagramme manuell oder sammeln Sie öffentlich verfügbare Diagramme aus Repositories.

Helm Chart-Repositories

Die Repositorys enthalten Diagramme, die installiert oder mit anderen Benutzern geteilt werden können. Helm stellt einen Befehl bereit, um direkt vom Client aus zu suchen. Es gibt zwei allgemeine Suchtypen:

1. helm search hub – Durchsucht den Artifact Hub aus Dutzenden von Repositories.

2. helm search repo – Durchsucht Repositories, die im lokalen Helm-Client mit helm repo add hinzugefügt wurden .

Ohne Filter werden alle verfügbaren Diagramme im Suchergebnis angezeigt. Fügen Sie einen Suchbegriff hinzu, um die Abfrage zu verfeinern. Zum Beispiel:

helm search hub wordpress

Wenn Sie eine geeignete Karte finden, installieren Sie sie mit helm install .

Helm Chart-Veröffentlichungen

Durch die Installation eines Diagramms wird eine Version des neuen Pakets erstellt. Die helm install Der Befehl benötigt zwei Argumente:

helm install <release name> <chart name>

Ausführen von helm install druckt nützliche Informationen und ob Sie Maßnahmen zur Installation ergreifen sollten. Diagramme sind anpassbar und können vor der Installation einfach konfiguriert werden. Helm-Releases sind einfach zu warten und bei unerwünschten Änderungen rückgängig zu machen.


Ubuntu
  1. Was ist Kubernetes? Vollständiger Leitfaden

  2. Was ist Docker (und Linux-Container?)

  3. Gdomap und wofür wird es verwendet?

  4. Was passiert, wenn ich Plymouth deaktiviere und deinstalliere?

  5. Was ist containerd und in welcher Beziehung steht es zu Docker und Kubernetes?

So stellen Sie PostgreSQL auf Kubernetes bereit

So installieren und verwenden Sie Helm in Kubernetes

Was ist Cert-Manager und wie richtet man Cert-Manager für SSL-Zertifikate in Kubernetes Cluster on AWS mit Helm ein

Was ist Ingress Controller und wie stellt man Nginx Ingress Controller in Kubernetes Cluster on AWS mit Helm bereit

Was ist EasyApache und wie verwende ich es?

Was ist DHCP und wie funktioniert DHCP? (DHCP-Grundlagen erklärt)