DevOps im Container
Container erleben derzeit einen regelrechten Boom. Im Unternehmen tragen sie dazu bei, agile Prozesse nach DevOps umzusetzen. Gleichzeitig treiben sie die Virtualisierung im Rechenzentrum voran. Steht damit das Aus der klassischen Virtualisierung bevor? Ein Kommentar von Diethelm Siebuhr.
DevOps gehört aktuell zu den großen Trends in den IT-Abteilungen. Im Mittelpunkt stehen Verfahren und Tools, um den IT-gestützten Wertschöpfungsprozess zu optimieren und zu beschleunigen. Ein zentraler Baustein ist die Container-Technologie, die Docker vor zwei Jahren mit einem Paukenschlag ins Rampenlicht der Virtualisierungsszene katapultierte. Der Hype ist ungebrochen und Tools wie Docker und Apache Mesos stellen bisherige Virtualisierungskonzepte auf den Kopf.
Die Vorteile von Containern sind klar: Die sehr gute Skalierbarkeit, Portabilität und ein einfacheres Deployment machen sie gegenüber den klassischen virtuellen Maschinen (VM) attraktiv. Innovative Container Service Provider setzen die großen Anbieter klassischer Virtualisierung zunehmend unter Druck. Auf diese Weise in die Zange genommen, haben die Hersteller nach und nach Schnittstellen für Container eingeführt: VMWare brachte mit Photon OS ein eigenes Betriebssystem für die Linux Distribution auf den Markt. Microsoft integrierte den Service Docker Datacenter, um das Verwalten von Containern über Azure und Azure Stack zu ermöglichen.
Steht die klassische Virtualisierung vor dem Aus?
Aktuell geht es vor allem darum, Best Practices und Management-Verfahren für einen sicheren sowie effizienten Einsatz von Containern zu evaluieren. Mit einem einfacheren Management und Handling von Containern wird sich diese Technologie in Unternehmen weiter durchsetzen.
Doch verdrängen Container auf diese Weise langfristig die Hypervisor-basierte Virtualisierung? Findet derzeit ein Einstieg in eine Ära der Postvirtualisierung statt? Immerhin haben Container einige Vorzüge auf ihrer Seite: Sie starten schneller als VMs, erzeugen einen geringeren Overhead und vereinfachen die Portabilität von Applikationen durch ihre Unabhängigkeit.
Container versus Hypervisor
Gerade dieser letzte Punkt ist ein Vorteil, den Hypervisor-Technologien noch nicht vollständig erbracht haben. Nach wie vor gibt es im Fall von Hybrid und Multi Clouds keine durchgängigen Strategien, wie diese Modelle über unterschiedliche Hypervisor-Technologien hinweg reibungslos funktionieren. Daher wählen die meisten Cloud-Verantwortlichen für eine Hybrid Cloud häufig noch immer den gleichen Hersteller oder sie wählen Provider, die den gleichen Hypervisor einsetzen.
Um den so entstehenden Vendor-Lock-in zu umgehen, gibt es nur eine Alternative: die Wolke mit quelloffenen Lösungen wie etwa OpenStack selbst zusammenzustellen. Sich hingegen in die komplexe Technologie und einzelnen Module hineinzuarbeiten, ist wiederum mit enormen Aufwand verbunden. Diesen wollen oder können Unternehmen nicht zusätzlich stemmen.
Punkt für die Container
Hier spielen Container ihre Stärken voll aus: Bei ihnen reicht beispielsweise weitestgehend ein Docker-Agent als Verbindung zum Host-Betriebssystem. Hypervisor und Provider spielen keine Rolle. Das Betriebssystem muss nur einfachen Anforderungen genügen. Darüber hinaus gibt es heute Tools wie Rancher, Mesosphere oder Panamax. Sie automatisieren und vereinfachen die Verwaltung von Containern.
Eine Vielzahl von Containern unter Beachtung von Abhängigkeiten bedarfsgerecht auf Hosts zu verteilen, ist auf diese Weise weitaus einfacher als die Administration virtueller Maschinen. Container sind im Vergleich zu VMs deutlich mobiler: In Container verpackte Applikationen lassen sich zwischen den verschiedenen Plattformen oder Providern bei Hybrid- oder Multi-Cloud-Szenarien viel einfacher hin und her bewegen.
Nicht vorschnell urteilen
Dennoch wäre es vorschnell, das Aus der klassischen Hypervisor-basierten Virtualisierung heraufzubeschwören. Diese hat nach wie vor einige Trümpfe in der Hand. Dazu gehört ihre hochverfügbare Infrastruktur, die wiederum Container aktuell so nicht abbilden. Container nutzen virtualisierte Server als hochverfügbare Laufzeitumgebungen (Host). Somit ergänzen sich beide Technologien.
Auch gibt es Applikationen und Dienste, die sich nicht für Container-Virtualisierung eignen. Container sind beispielsweise für Microservices ideal, während monolithisch entwickelte, komplexe Applikationen innerhalb einer VM besser aufgehoben sind. Server mit Datenpersistenz (Datenbanken, Sessions, Business Logic) werden derzeit weiterhin als klassische virtuelle Server realisiert, denn von Haus aus gehen mit dem Lebensende eines Containers auch ihre Daten verloren.
Ein weiterer wichtiger Faktor, der für klassische Virtualisierung spricht, ist die Sicherheit. Hier hat die VM die Nase vorn. So bieten Hypervisoren weniger Angriffsfläche als der typische Linux-Kernel. Ist dieser kompromittiert, sind in der Regel alle an ihn geknüpfte Container betroffen. VMs sind isolierter und bringen so ein höheres Sicherheitslevel mit sich.
Fazit: Anwendungsfall entscheidet über Technologie
Container sind aktuell vor allem eine gute Ergänzung zur bisherigen Hypervisor-basierten Virtualisierungsumgebung. Als Cloud Provider ist es wichtig, sich intensiv mit den Potenzialen und möglichen Anwendungsszenarien von Containern auseinanderzusetzen. Auf lange Sicht betrachtet wird es hingegen eine partielle Postvirtualisierung geben.
Diese geht aber vom Cloud-Einsatz selbst aus: Mittelfristig werden Unternehmen keine eigenen Server mehr besitzen, sondern sich komplette Business-Prozesse aus der Cloud eines Anbieters heraus zusammenstellen. Allein die Provider verwenden in diesem Szenario noch Server. Hier wird es dann jeweilige Nischen für verschiedenste Virtualisierungstechnologien geben.
Über den Autor
Diethelm Siebuhr ist CEO der Nexinto GmbH. Das 2013 aus der Easynet GmbH hervorgegangene Unternehmen positioniert sich als Lösungsanbieter für das Management geschäftskritischer IT-Systeme und unterstützt mit 200 Mitarbeitern vom vom Hauptsitz in Hamburg aus Unternehmen in diversen Branchen bei der digitalen Transformation. Zum Angebot gehören maßgeschneiderte Strategien und skalierbare Lösungen für IT-Security und Business Intelligence sowie Konzepte für das Internet of Things und neue Ansätze wie DevOps. Sämtliche Managed Services betreibt Nexinto in seinen eigenen Tier-3- und Tier-4-Rechenzentren in Deutschland. Nexinto ist nach ISO 9001 sowie ISO 27001 zertifiziert.