The Doppler Quarterly (DEUTSCHE) Winter 2016 - Page 42

Docker-Mythen widerlegt Dan Griffith Nachdem wir sechs Mythen widerlegt haben, werden Sie sehen: Die „containerisierte“ Zukunft ist näher, als sie dachten. Dieses Jahr hat Docker-Containern den Ruf der Tech- nologie mit dem größten Hype eingebracht. Dieser Wirbel um das Thema hat jedoch nicht dazu geführt, dass die IT-Community Docker-Container allgemein als die nächste große Sache akzeptiert – weit gefehlt. Entgegen dem klassischem Ablauf des Hype-Zyklus nach Gartner ist die Diskussion über Container anscheinend direkt vom technologischen Auslöser zum Tal der Enttäuschungen gesprungen und hat dabei die Phase der überzogenen Erwartun- gen komplett ausgelassen. Es scheint, dass jeden Tag neue kritische Einschätzungen von Containern im Allgemeinen und von Docker im Besonderen laut werden. Diese Kritiken konzentrieren sich häufig auf den vermeintlich krassen Gegensatz zwischen dem Potenzial der Containertechnologie von Docker und ihrer Unreife sowie mangelnden Einsatzfähigkeit für die tatsächliche produktive Nutzung. Durch meine Erfahrung in den Schützengräben der Entwicklung mit Docker habe ich eine ganz andere Perspektive des aktuellen und zukünftigen Status der Docker-Technologie gewonnen. Ich räume gerne ein, dass Docker-Container eine relativ ungetestete Technologie sind und dass größere funktionale Lücken im Hinblick auf Vernetzung, Speicher und Sicherheit noch zu schließen sind, damit Container zu einer grundlegenden Infrastrukturkomponente werden. Ich behaupte jedoch, dass die allgemeine Akzeptanz und umfassende Nutzung von Containern früher eintreten wird, als die meisten denken – und dass Container bereits auf dem besten Wege sind, sich flächendeckend zu verbreiten. In der vorliegen- den Diskussion stellen wir häufig anzutreffende Mythen im Hinblick auf Docker und Containerisie- rung vor und widerlegen sie. 40 | THE DOPPLER | WINTER 2016 Mythos 1: Docker-Container sind so etwas wie kleine VMs. Für viele IT-Experten mit umfassender Virtualisie- rungserfahrung war die Vorstellung von Docker-Con- tainern als kleine Ausgaben von virtuellen Maschinen ein logischer erster Bezugsrahmen. Die Gleichset- zung von Containern und virtuellen Maschinen ist ein einfaches, elegantes, einfach verständliches, aber leider auch völlig falsches Bild. Um diesen Irrtum aus- zuräumen, bringen Docker-Architekten in Schulun- gen deutlich zum Ausdruck, dass Container keine vir- tuellen Maschinen sind und auch nicht als solche behandelt werden sollten. Zwar dienen Docker-Con- tainer tatsächlich demselben Zweck wie VMs: Einem Anwendungsprozess wird damit eine Untergruppe von Ressourcen wie Rechenkomponenten, Speicher, Bibliotheken und Netzwerk präsentiert. Es gibt jedoch entscheidende Unterschiede, insbesondere in einem Bereich. Eine virtuelle Maschine nutzt ein komplettes Betriebs­ system, das auf einer abstrahierten Hard- ware-als-Software-Schicht läuft und für den Anwen- dungsprozess im Ganzen bereitgestellt wird. Im Gegensatz dazu stellt ein Container nur die jeweili- gen Betriebssystemressourcen bereit, die für die Ausführung seines speziellen Anwendungsprozesses nötig sind. Die Installation einer Anwendung in einer VM erfordert zunächst die Erstellung und Konfigura- tion einer ganzen Instanz einer bestimmten Betriebs- systemversion auf der virtuellen Hardware, die von einer bestimmten Hypervisor-Version zur Verfügung gestellt wird. Die Bereitstellung einer „containeri- sierten“ Anwendung erfordert im Wesentlichen eine Docker-Engine, die auf einem allgemeinen Kernel ausgeführt wird, ein Docker-Image (Instruktionssatz)