Analysen
13. Mai 2015
AUTOR: Businesscloud.de

Die Container kommen

Wie Cloud-Services zu ihm kommen, interessiert den End-User erfahrungsgemäß wenig, und das zu Recht. Denn für ihn ist wichtig, dass Cloud Computing „funktioniert“, sprich Infrastrukturdienste (IaaS), Anwendungen (Software as a Service) oder plattformbezogene Services (Platform as a Service) in der gewünschten Qualität zur Verfügung stehen. Für die IT-Abteilung wiederum ist entscheidend, dass sich solche Cloud-Services zügig nach Bedarf ordern und gegebenenfalls an veränderte Anforderungen anpassen lassen.

Business_Cloud_Docker_Aufmacher_IESM_pixelio.de

Container-Technologie wie Docker können die Bereitstellung von Cloud-Services beschleunigen. Allerdings hat Docker Einschränkungen, etwa die Begrenzung auf Linux als Host-Betriebssystem. Bild: IESM – Pixelio.de

Doch exakt dieses „On-Demand“-Prinzip bedeutet für ein Cloud-Rechenzentrum eine Herausforderung. Dabei spielt es keine Rolle, ob es sich um ein Datacenter eines externen Cloud-Services-Providers handelt oder das hauseigene Rechenzentrum, das eine Private Cloud betreibt. Denn im Idealfall sollten sich neue Workloads oder Cloud-Services innerhalb weniger Minuten einrichten und bereitstellen lassen.

Virtual Machines für einzelne Anwender und Applikationen

Das klappt in der Praxis meist auch, dank Virtual Machines (VM). Für einzelne Kunden beziehungsweise Anwendungen werden im Cloud-Rechenzentrum separate VMs auf Server-Systemen eingerichtet. Eine Virtual Machine ist quasi ein eigenes IT-System auf derselben Server-, Storage- und Netzwerk-Hardware, das strikt von anderen abgeschottet ist. So verfügt eine VM über ein eigenes Betriebssystem, Anwendungen, virtualisierte CPUs sowie separaten Arbeitsspeicher (RAM) und Speicherplatz auf Festplatten oder Solid State Drives. Heute dominiert in Cloud-Rechenzentren Virtualisierung auf Basis von Typ-1-Hypervisors wie VMware, Citrix-XEN, Red Hat KVM und Microsoft Hyper-V. In diesem Fall wird die Virtualisierungssoftware direkt auf der Rechner-Hardware implementiert. Der Hypervisor kommuniziert somit unmittelbar mit der darunterliegenden Hardware. Auf dem Hypervisor werden die Virtual Machines platziert, mit besagtem Betriebssystem, den Anwendungen, Binärdateien et cetera. Business_Cloud_Docker_VM_Container_Intel

Hypervisor im Vergleich zu Containern: Virtual Machines sind komplette Systemumgebungen, inklusive Betriebssystem. Linux-Container enthalten dagegen nur Anwendungen und dazu gehörige Komponenten wie Binaries und Bibliotheken. Bild: Intel

Es dauert etwa 10 bis 15 Minuten, um eine neue Virtual Machine einzurichten. Das ist ziemlich flott, denn um einen neuen physischen Server aufzusetzen, sind mehrere Stunden notwendig. Virtual Machines sind somit ein probates Mittel, um in einem Cloud-Rechenzentrum neue Workloads aufzusetzen.

Jetzt kommt Docker

Doch nun feiert eine Technik ein Comeback, die in ihren Ursprüngen bereits IBM in den 1970er Jahren auf seinen Großrechnern der Reihe System/370 verwendete: Container. Auch für Linux-Experten sind diese „Behälter“ ein alter Hut, sind Linux-Container (LXC) doch fester Bestandteil des Betriebssystems. Die Wiederentdeckung von (Linux-)Containern ist vor allem mit einem Namen verbunden: Docker. Dahinter verbirgt sich zum einem eine Linux-Container-Technologie, die als Open-Source-Software zur Verfügung steht. Zum anderen ist Docker ein Unternehmen, das sich der Vermarktung der Software beziehungsweise von entsprechenden Dienstleistungen verschrieben hat.

Kein Betriebssystem an Bord

Im Unterschied zu Virtual Machines sind Container „nur“ Behälter für Anwendungen, einschließlich der dazu gehörigen Komponenten wie Bibliotheken und Binärdateien. Diese Container haben jedoch kein eigenes Betriebssystem an Bord, sondern greifen auf die Systemsoftware (Linux) des Host-Rechners zurück. Deshalb können Container auf Betriebssystemkomponenten verzichten, benötigen weniger Ressourcen als Virtual Machines und starten schneller. Messungen von IBM haben ergeben, dass ein Container weniger als eine Sekunde zum Start benötigt, eine Virtual Machine auf Basis des Hypervisors KVM (Red Hat) dagegen rund 11 Sekunden. Zudem lassen sich Container auf alle Server kopieren, auf denen eine Standard-Linux-Distribution läuft, beispielsweise Red Hat, Suse, Ubuntu oder Debian. Die deutsche Markforschungs- und Beratungsgesellschaft Crisp Research betrachtet Docker denn auch als „strategisches Werkzeug“. Die Option, Container mit Anwendungen zwischen unterschiedlichen Systemplattformen verschieben zu können, sei vor allem im Cloud-Computing-Bereich von Vorteil. Dieses Verschieben von Container kann auch zwischen Clouds erfolgen, etwa von einer Private Cloud hin zu der Cloud-Umgebung eines Cloud-Service-Providers und umgekehrt.

Container nutzen Ressourcen besser aus

Weitere Vorteile von Containern sind laut Linux-Spezialist Red Hat das einfachere Patching des Betriebssystems, weil nur eines vorhanden ist, sprich Linux. Auch Updates der Anwendungen im Container seien unkomplizierter. Denn Container-Images bei Docker bestehen aus einzelnen Schichten (Layers), die sich separat auf den neuesten Stand bringen lassen. Docker-Images für unterschiedliche Anwendungen können Firmen und Service-Provider aus einem öffentlich zugänglichen Online-Repository („Docker Hub“) herunterladen und anpassen. Der Hub dient gewissermaßen als Sammelplatz für Images, die allen Docker-Nutzern zur Verfügung stehen. Außerdem lassen sich solche Images auch im eigenen Rechenzentrum speichern. Dort können Unternehmen spezielle Images vorhalten, die sie nicht jedermann zugänglich machen wollen.

Nicht alles Gold – was da im Container glänzt

Sind nun Container die bessere Wahl? Darauf gibt es keine eindeutige Antwort. Viele Cloud-Service-Provider, darunter die „ganz großen“ wie Amazon, Google und Microsoft, bieten beides an, sowohl Container als auch Virtual Machines. Vermutlich werden auch mittelständische Anbieter von Cloud-Diensten auf eine solche Taktik setzen. Business_Cloud_Docker_Implementierungszeit_Cisco_Redhat

Ein Vorteil von Containern sind die kurzen Bereitstellungszeiten. Bild: Cisco / Red Hat

Denn Container haben nicht nur Vorteile. Ein Manko ist, dass alle „Behälter“ dasselbe Betriebssystem nutzen. Sie lassen sich demnach nicht so gut voneinander abschotten wie Virtual Machines. Speziell für Cloud-Anwender, die auf die Sicherheit ihrer Daten Wert legen, ist das ein Punkt, der zugunsten von VM spricht. Hinzu kommt die angesprochene Bindung an Linux, die derzeit gegeben ist. Docker-Container werden gewissermaßen huckepack auf dieser Systemplattform transportiert. Virtual Machines dagegen können jedes beliebige Betriebssystem bereitstellen. Das ist ein Plus in puncto Flexibilität.

Es drohen „Container Wars“

Allerdings arbeitet Docker mit Software-Firmen zusammen, um seine Container auch auf anderen Plattformen verfügbar zu machen. Microsoft beispielsweise plant, in kommenden Versionen von Windows Server Docker-Container zu unterstützen. Doch diese Kooperation hält Microsoft nicht davon ab, mit „Drawbridge“ eine eigene Container-Technik zu entwickeln. Sie basiert auf einem „leichtgewichtige“ Windows-Betriebssystem-Template und so genannten Picoprozessen, die in einer isolierten Schicht (einer Art Container) ausgeführt werden. Business_Cloud_Docker_Windows_Microsoft

Microsoft will Docker-Container unter Windows Server bereitstellen. Bislang ist Docker in Verbindung mit Linux verfügbar. Bild: Microsoft

Auch CoreOS, ein Anbieter einer kompakten Linux-Version für große (Cloud-)Datacenter und Server-Cluster, hat mit Rocket eine Alternative zu Docker vorgestellt. Sie ähnelt Docker in vielen Belangen, soll jedoch nicht denselben „Overhead“ aufweisen. Denn Docker, so der Vorwurf von CoreOS, habe sich von seinen Ursprüngen entfernt und zu einem komplexen Konstrukt mit vielen Zusatzfunktionen entwickelt, das alles andere als leichtgewichtig sei. Und auch Canonical, das Unternehmen hinter der Linux-Distribution Ubuntu, setzt auf eine eigene Container-Variante: LXD. Sie versteht sich als eine Art Hypervisor für Docker-Container, der jedoch im Vergleich zu VMware, Xen und Hyper-V deutlich weniger Ressourcen erfordern soll. Ein Grund für die Integration eines Hypervisors ist laut Canonical die höhere Sicherheit: Die gemeinsame Nutzung des Host-Betriebssystems entfällt, und damit ein potenzielles Sicherheitsrisiko.

Fazit: Docker und Virtualisierung werden koexistieren

Auch wenn Docker derzeit unbestritten die wichtigste Container-Technologie ist, droht somit die Gefahr, dass es zu einem Konkurrenzkampf unterschiedlicher Ansätze kommt. Erfreulich ist vor diesem Hintergrund, dass nach Einschätzung der meisten Fachleute zumindest kein Duell zwischen Hypervisors und Containern ansteht. Vielmehr spricht im Bereich Cloud Computing einiges für eine Koexistenz beider Technologien: Cloud-Rechenzentren können sicherheitsbewussten Anwendern Virtual Machines anbieten. Unternehmen, die auf schnelle Bereitstellung von Anwendungen Wert legen, haben die Option, Linux-Container zu nutzen.

Business_Cloud_Docker_Cloud_Crisp

Virtual Machines und Container in einer Cloud-Umgebung: Die Beratungsgesellschaft Crisp Research erwartet, dass beide Technologien parallel zum Zuge kommen können, wenn Cloud-Service-Provider ihren Kunden Anwendungen und Plattform-Services (PaaS) zur Verfügung stellen. Bild Crisp Research

Zudem kommt eine Kombination beider Verfahren in Betracht, etwa bei Anbietern von Public Cloud Services. So könnten Container gewissermaßen in Virtual Machines eingepackt werden, die anschließend Kunden zur Verfügung gestellt werden. Der Effekt: ein hohes Sicherheitsniveau dank Virtualisierung und kurze Bereitstellungszeiten durch Container. Nutzern von Cloud-Diensten steht dann das Beste aus beiden Welten zur Verfügung.

Seite teilen

Must Reads von anderen Tech-Seiten
silicon.de: Safe-Harbor-Nachfolger – EU-Datenschützer verlangen Nachbesserungen Weiterlesen

 

CANCOM.info: Drei Gründe für die Hybrid Cloud – Das leistet der Cloud-Mix in Unternehmen Weiterlesen

 

Scope Online: Cloud Computing in der Produktion – Drei Mythen über Business Cloud-Lösungen  Weiterlesen

Pressemitteilungen

Köln, den 2. August 2016 – Der ERP-Spezialist proALPHA stellt die Cloud-Variante seines ERP-Systems ab sofort über die Hosted ... Weiterlesen
München/Köln, den 30. Juni 2016 – In der umfassendsten Analyse des deutschen Marktes für Cloud-Computing-Services im B2B-Bereich ... Weiterlesen
Köln, den 21. Juni 2016 – PIRONET macht Anwendern den Umstieg auf die neue Anwendungssuite SAP S/4HANA ab sofort besonders leicht: Kunden ... Weiterlesen
München/Köln, 19. April 2016 – Der IT-Konzern CANCOM hat einen neuartigen Marktplatz für Softwareanwendungen aus der Cloud ... Weiterlesen