Viele CIOs und andere IT-Entscheider sind noch zurückhaltend, wenn es um den Einsatz von Container-Techniken geht. Welchen Business-Nutzen bringen Docker & Co. eigentlich?
Böttcher: Die IT steht heute direkt mit dem Kunden in Verbindung. Deshalb sind Prozesse, die beispielsweise eine neue Ressource über ein Ticket anfordern und diese im besten Fall in ein bis zwei Tagen bereitstellen, nicht mehr haltbar. Jede Sekunde in der Interaktion mit dem Kunden zählt und jedes Feedback muss direkt verarbeitet werden können. Die IT muss daher im Einklang mit den Fachabteilungen am Puls des Kunden sein. Vor diesem Hintergrund entwickelt man heutzutage auslieferungsfertige Dienste, die sich nahtlos und automatisiert in Prozesse einbeziehen lassen. Hier helfen Container, eine entsprechende Abstraktionsschicht zu schaffen und die notwendige Flexibilität zu gewährleisten.
Wie verbreitet sind Container-Techniken schon in deutschen Unternehmen?
Böttcher: Wir arbeiten aktuell an einer Studie zum Thema Container im Unternehmenseinsatz, die dazu Antworten liefern wird. Generell kann ich sagen, dass das Thema Container auf einschlägigen Fachkonferenzen eine immer größere Rolle spielt.
Gibt es Unternehmen oder Organisationen in Deutschland, die Docker bereits in größerem Umfang einsetzen?
Böttcher: Unter den Container-Nutzern sind einige Unternehmen in Deutschland, die diese entweder für die eigenen Dienste einsetzen oder aber ihren Business-Kunden eine Plattform auf Basis von Containern zur Verfügung stellen, auf der diese dann neue Produkte erstellen können. Im Docker-Umfeld gehören dazu beispielsweise Jimdo, Otto, SAP, Sixt oder Zalando.
Wie reif ist Docker für den Unternehmenseinsatz?
Böttcher: Docker ist von einer Ideologie zu einer Plattform gereift, alle großen Cloud-Plattformen unterstützen die Technik heute. Auch das Ökosystem rund um Docker wächst stetig. Bereits 2014 hat Docker die Versionsnummer 1.0 überschritten. Viele andere Technologien, die noch nicht einmal die Versionsnummer 1.0 erreicht haben, sind schon in großen und mittelständischen Unternehmen weltweit im Einsatz. Daher ist Docker für den Unternehmenseinsatz zu empfehlen.
Eignet sich Docker auch für geschäftskritische Anwendungen?
Böttcher: Das hängt davon ab, um welche Art von Anwendung es sich handelt und wie Sie "geschäftskritisch" definieren. Erleiden Sie beispielsweise einen Verlust, wenn Ihr SAP-System eine Stunde nicht läuft oder Ihr Webshop eine Stunde nicht verfügbar ist? Meiner Auffassung nach ist jede Anwendung kritisch, die einen direkten Kontakt zum Kunden besitzt. Ob die Einkäufe des Kunden dann erst mit einer Verspätung von einer Stunde in das SAP-System laufen können, ist zweitrangig. Viel wichtiger ist es, das Geschäft und den Kunden mitzunehmen. Wenn Sie diese Auffassung teilen, befinden wir uns in einem Bereich, für den Docker sehr gut geeignet ist. Dazu tragen besonders die neuen Features rund um Multi-Host-Orchestrierung und Load Balancing auf Container-Ebene bei.
Wie steht es um die Sicherheit von Docker-Umgebungen? Kritiker monieren, dass sich wirklich sichere Docker-Umgebungen nur mit tiefem Expertenwissen und erheblichem Aufwand implementieren lassen.
Böttcher: Der Lernaufwand für neue Technologien ist generell hoch; angesichts der schnell fortschreitenden Entwicklung hat man auch nie ausgelernt. Es empfiehlt sich also, frühzeitig in die Aus- und Weiterbildung zu investieren oder die entsprechenden Ressourcen am Markt zu akquirieren, um langfristig Chancen zu eröffnen. Die Container-Anbieter und die Entwicklergemeinschaft arbeiten mit Hochdruck daran, möglichst viel Sicherheit in die Container selbst zu integrieren und den Betrieb von verteilten Applikationen sicher zu gestalten. Docker beispielsweise hat mit der neuesten Version eine End-zu-End-Verschlüsselung bekommen.
Wie stabil arbeiten Docker-Umgebungen heute?
Böttcher: Der Schlüssel zum Erfolg liegt hier in der richtigen Orchestrierung der Container. Diese erfolgt in der Regel über ein Orchestrierungstool, das im Bereich Service Management und Scheduling die entsprechende Unterstützung bietet. Docker war bis zur aktuellen Version hier recht schwach aufgestellt beziehungsweise konnte diese Anforderungen aus dem eigenen Ökosystem nicht bereitstellen. Andere Tools wie Kubernetes, Amazon ECS, Nomad und Cattle waren die richtige Wahl zur Orchestrierung.
Welche Hersteller sind die größten Treiber von Container-Techniken?
Böttcher: Dazu gehören Docker selbst, Red Hat, Google, Github, Microsoft, Huawei Technologies, Cisco und IBM. Aber auch deutsche Unternehmen sind an der Weiterentwicklung beteiligt. Insgesamt gibt es an die 3000 Contributer und damit eine große Entwicklergemeinde. Im Vergleich dazu sind es bei der Container Engine rkt von CoreOS nur etwa ein Zehntel. Allein dies zeigt die Bedeutung und das Interesse an der Technologie.
IT-Entscheider sollten neben Docker und den anderen Open-Source-Container-Technologien aber auch die Angebote der großen Softwarehersteller in Betracht ziehen, darunter beispielsweise Microsoft Hyper-V Container, Microsoft Container oder VMware Bonneville. Diese sind sicherlich für viele Unternehmen aus dem Mittelstand interessant, die sich nicht dauernd mit den neuesten Technologietrends aus dem Open Source-Universum auseinandersetzen können.
Welche Verbesserungen bringt die neue Version Docker 1.12 für IT-Verantwortliche?
Böttcher: Docker führt mit der Version 1.12 eine Möglichkeit ein, die Docker Engines mit Hilfe des Docker- eigenen Ökosystems zu orchestrieren. Dieser "Swarm" von Container-Engines ist ferner End-zu-End verschlüsselt und bietet einen Load Balancer auf Container- und Port-Ebene. Damit wirkt man der starken Verbreitung von anderen Tools am Markt ein wenig entgegen. Eine andere Neuerung sind die Distribution Application Bundles, die es ermöglichen, eine detaillierte und versionierte Multi-Container-Applikation in die Delivery Pipieline zu integrieren. Damit soll der Fluss vom Entwickler-Laptop bis hin zur Produktion deutlich vereinfacht werden. Die neue Version bringt also eine Erweiterung in der Fokussierung: Docker geht von der Ebene der Container auf die Ebene der verteilen Applikationen.
Docker gilt als die führende Container-Technik im Markt. Welche Vorteile bietet Docker gegenüber alternativen Systemen wie CoreOS, AppC oder dem Urvater LXC?
Böttcher: Aktuell gibt es sehr viel Bewegung in der Entwicklung der einzelnen Container-Technologien. Mit der Einführung der Open Container Initiative (OCI) hat sich noch einmal einiges verändert und auch im Kern der Container-Technologien gab es noch die eine oder andere Modifikation. Docker selbst beispielsweise hat sein Ausführungsmodell noch einmal anpassen müssen, damit die OCI-Container-Images nun auch unterstützt werden.
Im Lauf der Zeit hat sich Docker zu einer Plattform weiterentwickelt und offeriert damit viele Komponenten, die andere leichtgewichtigere Container-Varianten nicht bieten. LXC wiederum ist mehr an ein Betriebssystem gebunden und liefert damit einen "Full System Container" aus. Bei diesem Urvater, wie Sie es so schön formulieren, ist die Ähnlichkeit zu einer virtuellen Maschine noch größer und deutlich sichtbarer. Rkt dagegen versucht, sich am Prinzip des leichtgewichtigen Standard-Container zu orientieren. Unterm Strich kann man sagen: Docker ist zu einer Plattform gewachsen, die dem Nutzer viele Tools und Technologien mitliefert, die der bei anderen Technologien mit Hilfe von externen Komponenten abdecken muss. Ob dies ein Vor- oder Nachteil ist, hängt vom jeweiligen Einsatzszenario ab.