Seite 2 - Kopplung von Docker mit VMware

Lesezeit
2 Minuten
Bis jetzt gelesen

Seite 2 - Kopplung von Docker mit VMware

09.09.2015 - 11:56
Veröffentlicht in:
Nutzung des Docker Plug-Ins
Die Bereitstellung eines neuen Containers erfolgt in drei Schritten: Zunächst müssen Sie das passende Docker-Image auf der Docker-Node verfügbar machten. Hierfür eignet sich der Workflow "Images/Pull Image". Nach dem Start des Workflows geben Sie dort den Photon-Host als Node an und wechseln mit einem Klick auf "next" zum nächsten Abschnitt. Hier geben Sie den Name des Image an, beispielsweise "busybox:latest". Da dieses Image im offiziellen Docker-Hub liegt, muss der Photon-Host für diese Operation über Internetzugriff verfügen. Ein kleines grünes Häkchen unter dem Workflow quittiert die erfolgreiche Operation.

Der zweite Schritt besteht im Erstellen des Containers und geschieht mittels "containers / create container Workflow". Die meisten Optionen können Sie hier zunächst vernachlässigen. Für einen sinnvollen Busybox-Container genügt es, das entsprechende Image auszuwählen und einen beliebigen Busybox-Prozess zu starten, indem Sie diesen unter CMD konfigurieren – beispielsweise "/bin/ash", um eine Shell zu starten. Möchte man sich später mit dem Container verbinden, sollten Sie zusätzlich die Optionen "attach stdin/stdout", "open stdin" und "attach tty" aktivieren.
Der dritte und letzte Schritt startet den Container. Hierzu dient der Workflow "containers / start container". Den zuvor erstellten Container wählen Sie als Eingabeobjekt. Alle anderen Optionen können Sie auf Standard belassen. Klicken Sie in die Inventory-Ansicht des Orchestrator, finden sich dort unter "Coopto" alle hinzugefügten Hosts samt den Containern, die auf ihnen aktuell ausgeführt werden.


Bild 2: In der Inventory-Ansicht lässt sich die aktuelle Docker Konfiguration betrachten.
(Quelle: Fritz & Macziol / vRealize Orchestrator)


Einen echten Vorteil bietet diese Vorgehensweise bei manueller Anwendung noch nicht, denn statt einem einfachen docker-run-Befehl werden drei Schritte benötigt. Wirklich interessant wird es allerdings durch das Aneinanderreihen dieser Einzelaufgaben und die Kombination mit anderen Plug-Ins, um damit einen bestimmten Dienst abzubilden. Die Möglichkeiten gehen hierbei weit über die Funktionalität eines Docker Compose hinaus und erlauben unter anderem das Koppeln von vSphere-, Netzwerk- oder Storage-Prozessen mit Containern. Im Sandbox-Unterverzeichnis finden sich Beispiele für die Erstellung bestimmter Dienste. So zeigt der Workflow "Create Multi-Tier Liferay Service", wie sich ein aus mehreren Containern bestehender Dienst abbilden lässt. Dienste, die einmal auf diese Art definiert wurden, können Sie im Anschluss als Service zur Verfügung stellen und mit einem einzigen Klick beliebig oft bereitstellen.

Container-as-a-Service
vRealize Orchestrator ist die Verwaltungsoberfläche, um beliebige Dienste, sprich XaaS, in VMware umzusetzen. So können Sie mit ein wenig Hilfe von Plug-Ins ohne große Mühe auch Docker-as-a-Service-Workflows erstellen. Um diese nun auch Endnutzern zur Verfügung zu stellen, eignet sich das VMware Self-Service-Portal vRealize Automation. Hier können Sie alle in Orchestrator abgebildeten Dienste mit einer granularen Berechtigungs- und Beantragungsstruktur in einem Web-Portal an die Nutzer bereitstellen. Die dort genutzte Komponente ist der Advanced Service Designer [7], der die Orchestrator Workflows anstoßen und vom Benutzer benötigte Eingaben erfragen kann.
 

Bild 3: In vRealize Automation können Container gemeinsam mit anderen Diensten als Service beantragt werden. (Quelle: Fritz & Macziol / vRealize Automation)

Sollte dieser nicht zur Verfügung stehen, eignet sich auch der vSphere Web-Client, um Workflows an Endnutzer bereitzustellen. Somit können die vSphere-Administratoren aus der gleichen Oberfläche heraus neben virtuellen Maschinen nun auch Container provisionieren.
 

Bild 4: In vRealize Orchestrator erstellte Workflows lassen sich auch aus vCenter heraus ausführen.
(Quelle: Fritz & Macziol / vSphere Web Client)


Fazit
Bereits heute können Container-Dienste im Stil von Amazon innerhalb der eigenen vSphere-Infrastruktur umgesetzt werden. Zusätzliche Lösungen wie vRealize Automation ermöglichen eine komfortable Bereitstellung via Web-Portal und neben Infrastructure-as-a-Service sowie Container-as-a-Service auch beliebige weitere Dienste – XaaS. Der Clou: Der Nutzer bekommt nun seine Container genau dann, wenn er sie benötigt. Der direkte Zugriff auf den Docker-Host bleibt jedoch dem Administrator vorbehalten. Weil Container keinen Einfluss auf die Hostkonfiguration nehmen, entsteht eine klare Trennung der Verantwortungsbereiche zwischen Betrieb und Fachabteilung, ohne auf die Vorteile von Docker zu verzichten.

Durch die Nutzung von virtueller Hardware als Basis kann die vorhandene Infrastruktur mit ihren Vorteilen sofort für die Container-Technologie genutzt und dank einer generischen Workflow Engine auf Grundlage von vRealize Orchestrator mit anderen Technologien kombiniert werden. VMware arbeitet zudem neben Photon schon an weiteren Werkzeugen für die Container-Integration: mit den Projekten Lightwave [8] und Bouneville [9] gibt es vielversprechende Erweiterungen, die eine tiefe Integration in vSphere versprechen. In vSphere könnten damit Container bald so verwaltet werden wie heutige virtuelle Maschinen.

Es bleibt also spannend und womöglich geht es gar nicht um ein Entweder-oder, sondern um eine sinnvolle Kombination von Containern und virtuellen Maschinen. Die Zeit wird zeigen wie beide Technologien weiter zusammenfinden werden.

   
Seite 1: Mögliche Integrationspfade
    Seite 2: Container-as-a-Service

<< Vorherige Seite Seite 2 von 2


ln/Robert Szymczak, VMware Consulting und Data-Center Services bei Fritz & Macziol

[7] http://pubs.vmware.com/vra-62/index.jsp#com.vmware.vra.asd.doc/[...]
[8] https://github.com/vmware/lightwave
[9] https://www.youtube.com/watch?v=q0Xg7mVOO8o

Ähnliche Beiträge

Azure mit lokalen Netzen verbinden (3)

Azure bietet vielfältige Möglichkeiten, um Ressourcen in der Cloud mit lokalen Netzwerken zu verbinden. Dazu gehören auch Sicherheitsmechanismen und Loadbalancer, die den Datenverkehr zwischen Cloud und lokalem Rechenzentrum nicht nur zur Verfügung stellen, sondern absichern und hochverfügbar konfigurieren. IT-Administrator zeigt die Wege auf, um die Cloudumgebung mit dem lokalen Netzwerk zu verbinden. Im dritten und letzten Teil der Workshopserie zeigen wir, wie Sie virtuelle Firewalls hochziehen.

Azure mit lokalen Netzen verbinden (2)

Azure bietet vielfältige Möglichkeiten, um Ressourcen in der Cloud mit lokalen Netzwerken zu verbinden. Dazu gehören auch Sicherheitsmechanismen und Loadbalancer, die den Datenverkehr zwischen Cloud und lokalem Rechenzentrum nicht nur zur Verfügung stellen, sondern absichern und hochverfügbar konfigurieren. IT-Administrator zeigt die Wege auf, um die Cloudumgebung mit dem lokalen Netzwerk zu verbinden. Im zweiten Teil binden wir den Connection Broker an und erklären, was es mit dem Cloud Witness auf sich hat.

Azure mit lokalen Netzen verbinden (1)

Azure bietet vielfältige Möglichkeiten, um Ressourcen in der Cloud mit lokalen Netzwerken zu verbinden. Dazu gehören auch Sicherheitsmechanismen und Loadbalancer, die den Datenverkehr zwischen Cloud und lokalem Rechenzentrum nicht nur zur Verfügung stellen, sondern absichern und hochverfügbar konfigurieren. IT-Administrator zeigt die Wege auf, um die Cloudumgebung mit dem lokalen Netzwerk zu verbinden. Im ersten Teil der Workshopserie schildern wir das Prinzip virtueller Netzwerke.