Container-Orchestrierung mit Azure Container Service

Kubernetes in Microsoft Azure nutzen und bereitstellen

| Autor / Redakteur: Thomas Joos / Florian Karlstetter

Arbeiten mit Kubernetes in Microsoft Azure.
Arbeiten mit Kubernetes in Microsoft Azure. (Bild: © Cybrain - stock.adobe.com)

Die von Google entwickelte Opensource-Container-Orchestrierungs-Lösung Kubernetes lässt sich auch in Microsoft Azure einbinden. Damit können also auch Microsoft-Kunden komfortabel mit Kubernetes arbeiten.

Container sind mittlerweile auch aus Microsoft-Netzwerken kaum weg zu denken. Zwar setzt Microsoft in Windows Server 2016 und auch in Microsoft Azure vor allem auf Docker als Container-Lösung, dennoch lassen sich auch andere Lösungen einbinden.

Kubernetes gehört zu den Platzhirschen, wenn es darum geht Container über deren kompletten Lebenszyklus zu gestalten. Dieser geht von der Erstellung, Verwaltung und Betreiben der Anwendungen, die in den Containern betrieben werden, bis hin zum Löschen. Die Lösung wurde von Google entwickelt und an die Cloud Native Computing Foundation gespendet.

Generell gilt allerdings, dass sich Administratoren mit Kubernetes auskennen müssen, um die Lösung in Microsoft Azure nutzen zu können. Es gibt keine Assistenten, wie für andere Dienste, welche die Konfigurationsaufgaben übernehmen. Die Verwaltungslösung für Container kann auf lokalen Servern installiert werden, steht aber auch auf gängigen Cloudplattformen zur Verfügung. Dazu gehören Microsoft Azure, Amazon Web Services (AWS), IBM Blueshift und Red Hat Openshift.

Mit Azure Container Service arbeiten

Mit Azure Container Service können verschiedene Container-Orchestrierungstools genutzt werden, um Container bereitzustellen. Dazu gehören neben Kubernetes auch DC/OS und Docker Swarm. In Azure Container Service lassen sich so auch hybride Strukturen betreiben. Ein Kubernetes-Cluster lässt sich dadurch in wenigen Minuten erstellen. Treten Lastspitzen auf, kann ein Kubernetes-Cluster in Microsoft Azure sehr schnell skaliert werden. Das ist ein deutlicher Vorteil, im Vergleich zum lokalen Betrieb.

Das kann Kubernetes in Microsoft Azure

Generell ist es problemlos möglich einen Kubernetes-Cluster in Microsoft Azure zu erstellen. Auch die Tools zum Verwalten von Kubernetes sind mit Microsoft Azure kompatibel. So lassen sich zum Beispiel auch Helm und Draft mit Kubernetes in Microsoft Azure verwenden. Auch Jenkins lässt sich integrieren. Generell kann in Microsoft Azure Kubernetes in vollem Umfang verwendet werden.

Neben der Möglichkeit eigene Clusterknoten mit den Funktionen in Microsoft Azure zu erstellen, können auch die Funktionen aus dem Azure Container Service genutzt werden, um einen Kubernetes-Cluster in der Cloud darzustellen.

Kubernetes Cluster in Azure Cloud Shell erstellen

Microsoft bietet in Azure die Azure Cloud Shell an, die im oberen Bereich des Portals gestartet werden kann. Anschließend kann im Browser mit Linux-Befehlen oder mit PowerShell CMDlets gearbetiet werden. Mit „az --version“ wird die aktuelle Version der zur Verfügung stehenden Bereiche der Azure Cloud Shell angezeigt. Damit lässt sich überprüfen, ob die notwendigen Versionen zur Verfügung stehen.

In der Azure Cloud Shell lassen sich auch Ressourcengruppen erstellen. Es ist generell sinnvoll einen Kubernetes-Cluster in einer eigenen Ressourcengruppe zu bündeln, sodass alle notwendigen Funktionen zusammengefasst werden:

az group create --name KubernetesGroup --location westeurope

Anschließend kann der Kubernetes-Cluster erstellt werden. Dazu wird der Azure Container Service verwendet sowie die zuvor erstellte Ressourcengruppe. Mit diesem Befehl können dann auch gleich die verschiedenen Knoten erstellt werden:

az acs create --orchestrator-type kubernetes --resource-group KubernetesGroup --name KubernetesCluster --generate-ssh-keys

Die Erstellung des Clusters dauert einige Zeit. Danach kann der Cluster mit dem Kubernetes-Tool „kubectl“ verwaltet werden. In der Azure Cloud Shell ist „kubectl“ automatisch integriert. Um sich mit dem Kubernetes-Cluster zu verbinden, müssen zuerst die Verbindungseinstellungen angepasst werden:

az acs kubernetes get-credentials --resource-group=KubernetesGroup --name=KubernetesCluster

Sobald die Verbindung erfolgt aufgebaut wurde, kann mit „kubectl“ der Cluster verwaltet werden. Um zum Beispiel die einzelnen Knoten anzuzeigen wird der Befehl „kubectl get nodes“ verwendet.

Mit dem Kubernetes-Cluster arbeiten

Nachdem ein Cluster zur Verfügung steht, lassen sich Anwendungen bereitstellen. Hier kann entweder auf Azure Cloud Shell gesetzt werden, oder besser auf Tools, die für Kubernetes geeignet sind. In der Azure Cloud Shell steht „kubectl“ zur Verfügung, um Container zu erstellen, und zu verwalten. Im Cluster kann mit Images gearbeitet werden, genauso wie in lokalen Umgebungen. Mit dem Tool „kubectl“ wird die Umgebung so erstellt, wie in einer YAML-Datei festgelegt. Der Befehl dazu lautet zum Beispiel:

kubectl create -f https://k8s.io/docs/tasks/access-application-cluster/two-container-pod.yaml

Der Vorteil beim Betrieb von Kubernetes in Microsoft Azure besteht darin, dass keine physische Hardware zur Verfügung stehen muss, und der Cluster sehr flexibel und skalierbar ist. Dazu kommt, dass der Kubernetes-Cluster auch auf andere Daten und Dienste in Azure zugreifen kann, einschließlich auf andere Container-Technologien. Unter anderem können Entwickler auf diesem Weg auch Container auf Basis von Apache Mesos erstellen, genauso wie mit Docker Swarm.

Durch die enorme Skalierbarkeit lassen sich sehr schnell hochverfügbare und sehr leistungsstarke Kubernetes-Cluster erstellen. Ein solcher Cluster ist generell auch recht schnell einsatzbereit. Allerdings gehört für den produktiven Betrieb einiges an Hintergrundwissen dazu. Wer aber auf die schnelle einen Kubernetes-Cluster aufbauen will, kommt mit Azure Container Service recht schnell weiter.

Kommentare werden geladen....

Kommentar zu diesem Artikel abgeben

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45000703 / Virtualisierung)