Zum Inhalt springen
en
Von Thomas Strigel am 03.04.2018 Corporate

Warum CIOs besser heute als morgen Docker-Projekte starten sollten

Mit der Open-Source-Software Docker können CIOs die Flexibilität, Betriebssicherheit und Effizienz ihres IT-Betriebs wesentlich erhöhen.

Was Docker genau ist, wird bereits in einer eine Vielzahl von Fachartikeln beschrieben, so dass ich hier nur ganz kurz und stark vereinfacht auf das Grundprinzip eingehen will:

Bei Docker teilen sich Anwendungen den Betriebssystem-Kernel in gegeneinander abgeschotteten Containern. Dies macht auch schon den Unterschied zur Virtualisierung mit einem Hypervisor deutlich, wo die Hardware virtualisiert wird und die Anwendungen in eigenen Betriebssysteminstanzen mit jeweils eigenem Kernel laufen. Dies bedeutet, dass jede Anwendung ein komplettes Betriebssystem für sich beansprucht. Mit dem Nachteil eines großen Overheads und der Notwendigkeit, jede Instanz einzeln in das Patchmanagement sowohl für das Betriebssystem, als auch die Anwendung einzubeziehen. Durch die gemeinsame Kernelnutzung werden in Docker-Umgebungen die Ressourcen sehr viel effizienter genutzt und das Deployment von Systemen geht sehr viel rascher.

Warum sind Container-Lösungen aber noch aus ganz anderen Gründen so interessant? Dazu schauen wir uns ganz kurz an, was in Docker-Containern eigentlich passiert.

Docker-Lösungen bieten enorme Vorteile für den IT-Betrieb

Docker-Container basieren auf Images - und diesen Images hinzugefügten Softwarepaketen. Dieser Aufbau wird in einem strukturierten Textfile - dem dockerfile - beschrieben. Beim Starten eines Containers wird dieses dockerfile auf immer gleiche Weise abgearbeitet. Mit dem entsprechenden dockerfile erhält man auf jeder Docker-Umgebung immer das identische Ergebnis. Dies ist der erste große Vorteil: Wiederholbarkeit und Nachvollziehbarkeit. Staging über Systemumgebungen hinweg wird damit extrem vereinfacht. Ebenso ergeben sich vollkommen neue und effiziente Möglichkeiten des Desaster Recovery.

Durch diesen strukturierten Aufbau ergeben sich aber noch viel weitreichendere Möglichkeiten. Baut man nun Images auf der Basis von Images, so kann man komplexe Anwendungssysteme in sich konsistent aufbauen, da die Abhängigkeiten immer klar definiert sind. Wird ein Image durch ein aktualisiertes Image ausgetauscht, so verwenden alle Images, die dieses erste Image als Basis haben, die neue Version. Das gleiche gilt für verwendete Pakete, welche - durch die dockerfiles gesteuert - installiert werden. Dadurch lassen sich Testzyklen, Releasewechsel und sogar Parallelbetrieb verschiedener Versionen sehr einfach realisieren. Dies spart immense Aufwände in der Entwicklung aber vor allem auch im Betrieb von IT-Infrastrukturen.

Die Vorteile liegen klar auf der Hand:

  • hochgradige Standardisierung
  • stark vereinfachtes Patch- und Lizenzmanagement
  • stark reduzierte Aufwände im Test- und Releasemanagement
  • Portierung und Staging mit nahezu keinem Aufwand

Nimmt man nun noch die Option hinzu, Docker-Umgebungen über hybride IT-Infrastrukturen zu spannen - was ja aufgrund des oben Gesagten sehr einfach unterstützt wird - so ergibt sich eine bisher nicht erzielte Flexibilität, Betriebssicherheit und Effizienz für den IT-Betrieb.

Thomas Strigel

Leiter Geschäftsfeldentwicklung Managed Solutions und Consulting

Thomas ist ein Allrounder zu den Themen Managed Services und Cloud Solutions. Für Ihre Fragen und Anregungen hat er immer ein offenes Ohr.

Thomas Strigel lächelt in die Kamera