single.php
< Beitrag von Frank Oltmanns-Mack

Container on Azure 5: Azure Kubernetes Service

Nachdem ich in den letzten Beiträgen hauptsächlich die Theorie von Containern und Kubernetes erläutert habe, möchte ich in den nächsten beiden Artikeln nun 2 Praxisbeispiele präsentieren. Zunächst zeige ich Ihnen, wie Sie mithilfe des Azure Kubernetes Service einen Kubernetes-Cluster erzeugen können, um dann eine Beispielanwendung darauf bereitzustellen.Dafür nutze ich das Azure Command Line Interface (CLI). Es ist aber auch möglich, die Aufgaben per Azure-Portal zu erledigen.

Eine Ressourcengruppe erstellen

Zu Beginn erstellen Sie in Azure eine Ressourcengruppe, die Sie zur logischen Gruppierung von Elementen mit dem gleichen Lebenszyklus verwenden. Dabei geben Sie die Region an, in der Sie die Gruppe erzeugen wollen, z. B. West Europa.

Die Azure CLI zeigt Ausgaben immer als JSON an, die nach der Ausführung des Befehls so aussehen sollte:

Den AKS-Cluster erstellen

Nachdem dies erledigt ist, können Sie schon den AKS-Cluster erstellen. Dazu legen Sie einen Cluster mit einem Knoten an, um den Cluster später nach oben skalieren zu können. Schon bei dieser Aktion können Sie mit dem Parameter –enable-addons monitoring das Monitoring für die Container anschalten. Außerdem erzeugen Sie automatisch die notwendigen SSH-Schlüssel für den Zugriff auf den Cluster.

Zur Verwendung des Clusters in Azure wird bei der Erstellung zusätzlich ein Service Principal erstellt, der den Zugriff auf die Azure-Dienste ermöglicht. Dadurch kann der Kubernetes-Cluster automatisch die Azure-Ressourcen verwalten. Der Befehl az aks create bietet zudem mehrere zusätzliche Parameter zu Anpassung des Clusters. So können Sie z. B. auch die verwendeten Ressourcen genau spezifischen Bedürfnissen anpassen.

Den Cluster verwalten

kubectl ist der Kubernetes-Befehlszeilenclient, den Sie zu Verwaltung verwenden. Zur Installation nutzen Sie den folgenden Befehl:

Nach der Installation von kubectl rufen Sie die Anmeldeinformationen für den Cluster ab:

Die Verbindung können Sie anschließend durch folgenden Befehl prüfen:

Die Ausgabe sollte bei erfolgreicher Ausführung so aussehen:

Auf das Kubernetes-Dashboard zugreifen

Kubernetes besitzt ein eigenes Dashboard zu Verwaltung der kompletten Umgebung. Da bei AKS mittlerweile automatisch RBAC aktiviert ist, müssen Sie vor dem Aufruf des Dashboards eine entsprechende Rolle vergeben:

In Azure können Sie das Dashboard durch die Verwendung des folgenden Befehls einfach aufrufen:

Es wird im Standardbrowser dann anschließend das Dashboard aufgerufen:

Azure Kubernetes Service: Kubernetes-Dashboard

Kubernetes-Dashboard

Den Kubernetes-Cluster skalieren

Die Knotenanzahl eines Clusters können Sie in Azure sehr einfach nach oben und unten skalieren. Um den vorher erstellten Cluster auf 3 Knoten zu skalieren, ist folgender Befehl notwendig:

Die Anzahl der Knoten können Sie mit dem Befehl kubectl get nodes überprüfen.

Anschließend skalieren Sie den Cluster wieder auf einen Knoten herunter:

Den Kubernetes-Cluster aktualisieren

Mithilfe des Azure Kubernetes Service lässt sich die Version des Clusters auch schnell aktualisieren. Der folgende Befehl zeigt die verfügbaren Versionen an:

Aktuell sind diese Versionen verfügbar:

Wie Sie sehen, gibt es ein Upgrade auf die Version 1.10.8 oder 1.10.9. Nun aktualisieren Sie den Cluster auf die Version 1.10.9.

Achtung: Bei einem Upgrade können Sie Nebenversionen von Kubernetes nicht überspringen. Wenn Sie Ihren Cluster also von 1.8 auf 1.10 updaten wollen, dann müssen Sie zuerst ein Update auf 1.9 durchführen. Das erfolgreiche Upgrade des Clusters überprüfen Sie mit folgendem Befehl:

Ausgabe:

Mit dem Update des Clusters auf die Version 1.10.9 werden nach der Ausführung von az aks get-upgrades weitere Versionen angezeigt:

Bei der Erstellung des Clusters können Sie mit dem Parameter –kubernetes-version auch direkt die verwendete Kubernetes-Version auswählen.

Den Cluster löschen

Durch Löschung der Ressourcengruppe können Sie den AKS-Cluster wieder entfernen.

Fazit: Der Azure Kubernetes Service …

erleichtert die Verwendung von Kubernetes erheblich! So gestaltet sich die Verwaltung, Skalierung und Aktualisierung eines Kubernetes-Clusters im Azure Kubernetes Service sehr einfach.

Im nächsten Beitrag werde ich eine Beispielanwendung auf dem erstellten Kubernetes-Cluster ausrollen. Ich freue mich, wenn Sie auch dann wieder mit dabei sind.

Bisherige Teile der Serie „Container on Azure“:

  1. Was sind Container?
  2. Was ist Kubernetes?
  3. Architektur von Kubernetes
  4. Kubernetes-Sicherheit
  5. Azure Kubernetes Service
Folgen
X

Folgen

E-mail : *
Kategorie: Cloud | Schlagwörter: , , | Kommentare: 0

Beitrag kommentieren

CAPTCHA * Time limit is exhausted. Please reload CAPTCHA.