(VERALTET) Verwenden von Helm zum Bereitstellen von Containern in einem Kubernetes-Cluster
Tipp
Die aktualisierte Version dieses Artikels, wo die Verwendung von Azure Kubernetes Service berücksichtigt wird, finden Sie unter Installieren von Anwendungen mit Helm in Azure Kubernetes Service (AKS).
Warnung
Azure Container Service (ACS) wird ausgemustert. Für ACS werden keine neuen Features oder Funktionen mehr hinzugefügt. Sämtliche APIs, Portalfunktionen, CLI-Befehle und Dokumentationen werden als veraltet gekennzeichnet.
2017 wurde Azure Kubernetes Service (AKS) eingeführt, um die Verwaltung, die Bereitstellung und den Betrieb von Kubernetes zu vereinfachen. Falls Sie den Kubernetes-Orchestrator verwenden, migrieren Sie bitte bis spätestens 31. Januar 2020 zu Azure Kubernetes Service. Informationen zu den ersten Schritten finden Sie unter Migration von Azure Container Service (ACS) zu Azure Kubernetes Service (AKS).
Weitere Informationen finden Sie unter Einstellung von Azure Container Service am 31. Januar 2020.
Helm ist ein Open Source-Verpackungstool, das Ihnen dabei hilft, Kubernetes-Anwendungen zu installieren und ihren Lebenszyklus zu verwalten. Ähnlich wie Linux-Paket-Manager (z.B. Apt-get und Yum) wird Helm zur Verwaltung von Kubernetes-Diagrammen verwendet, bei denen es sich um Pakete aus vorkonfigurierten Kubernetes-Ressourcen handelt. Dieser Artikel veranschaulicht die Verwendung von Helm für einen Kubernetes-Cluster, der in Azure Container Service bereitgestellt wird.
Helm besteht aus zwei Komponenten:
Die Helm-CLI ist ein Client, der auf dem Computer lokal oder in der Cloud ausgeführt wird.
iller ist ein Server, der im Kubernetes-Cluster ausgeführt wird und den Lebenszyklus der Kubernetes-Anwendungen verwaltet.
Voraussetzungen
Erstellen eines Kubernetes-Clusters in Azure Container Service
Installieren und Konfigurieren von
kubectl
auf einem lokalen ComputerInstallieren von Helm auf einem lokalen Computer
Grundlagen von Helm
Um Informationen über den Kubernetes-Cluster anzuzeigen, in dem Sie Tiller installieren und die Anwendungen bereitstellen, geben Sie den folgenden Befehl ein:
kubectl cluster-info
Installieren Sie nach der Installation von Helm Tiller im Kubernetes-Cluster, indem Sie den folgenden Befehl eingeben:
helm init --upgrade
Wenn der Vorgang erfolgreich abgeschlossen wurde, erhalten Sie eine Ausgabe wie die folgende:
Um alle im Repository verfügbaren Helm-Diagramme anzuzeigen, geben Sie den folgenden Befehl ein:
helm search
Ihnen sollte eine Ausgabe wie die folgende angezeigt werden:
Um die Diagramme auf die neuesten Versionen zu aktualisieren, geben Sie Folgendes ein:
helm repo update
Bereitstellen eines Nginx-Eingangscontroller-Diagramms
Geben Sie zum Bereitstellen eines Nginx-Eingangscontroller-Diagramms einen einzelnen Befehl ein:
helm install stable/nginx-ingress
Wenn Sie kubectl get svc
eingeben, um alle im Cluster ausgeführten Dienste anzuzeigen, sehen Sie, dass dem Eingangscontroller eine IP-Adresse zugewiesen wurde. (Während die Zuordnung in Bearbeitung ist, sehen <pending>
Sie . Es dauert ein paar Minuten bis zum Abschließen.)
Nachdem die IP-Adresse zugewiesen wurde, navigieren Sie zum Wert der externen IP-Adresse, um die Ausführung des Nginx-Back-Ends anzuzeigen.
Um eine Liste der im Cluster installierten Diagramme anzuzeigen, geben Sie Folgendes ein:
helm list
Sie können den Befehl wie folgt abkürzen: helm ls
.
Bereitstellen eines MariaDB-Diagramms und eines Clients
Stellen Sie nun ein MariaDB-Diagramm und einen MariaDB-Client bereit, um eine Verbindung mit der Datenbank herzustellen.
Geben Sie zum Bereitstellen des MariaDB-Diagramms den folgenden Befehl ein:
helm install --name v1 stable/mariadb
wobei --name
ein für Releases verwendetes Tag ist.
Tipp
Sollte die Bereitstellung fehlschlagen, führen Sie helm repo update
aus, und versuchen Sie es erneut.
Um alle im Cluster bereitgestellten Diagramme anzuzeigen, geben Sie Folgendes ein:
helm list
Um alle im Cluster ausgeführten Bereitstellungen anzuzeigen, geben Sie Folgendes ein:
kubectl get deployments
Geben Sie schließlich Folgendes ein, um ein Pod für den Zugriff auf den Client auszuführen:
kubectl run v1-mariadb-client --rm --tty -i --image bitnami/mariadb --command -- bash
Um eine Verbindung mit dem Client herzustellen, geben Sie den folgenden Befehl ein, und ersetzen Sie dabei v1-mariadb
durch den Namen Ihrer Bereitstellung:
sudo mysql –h v1-mariadb
Sie können jetzt standard SQL-Befehle verwenden, um Datenbanken, Tabellen usw. zu erstellen. Erstellt beispielsweise Create DATABASE testdb1;
eine leere Datenbank.
Nächste Schritte
- Weitere Informationen zum Verwalten von Kubernetes-Diagrammen finden Sie in der Helm-Dokumentation.