Open-Source-Projekte für die Container-Technik

Docker schafft sich ein eigenes Ökosystem

28.01.2016 von René Büst
Rund um die Container-Technologie Docker ist ein riesiges Ökosystem aus ergänzenden Open-Source-Projekten entstanden. Die Entwickler basteln unter anderem an Benutzeroberflächen, Management Frameworks und Monitoring-Tools.
  • Docker, Container, Open Source, OpenStack

Knapp drei Jahre sind nun seit dem initialen Release von Docker vergangen. Wie in einem Rausch hat es die Open- Source Container-Technologie innerhalb kürzester Zeit auf die Notizzettel von CTOs weltweit geschafft. Nur noch selten bleiben Docker-Container und deren Vorzüge in technischen Keynotes, Applikations-fokussierten Leitartikeln und in Beratungsmandaten unerwähnt.

Doch Docker ist inzwischen weit mehr als nur eine Plattform für das Applikations-Deployment innerhalb von virtualisierten Containern. Docker hat zu einer neuen Bewegung in der Open-Source-Gemeinde geführt und sich dadurch selbst ein eigenes riesiges Ökosystem aus Tools und Lösungen geschaffen. Über 20.000 neue Open-Source-Projekte (Stand: Januar 2015) sind rund um Docker entstanden, darunter Benutzeroberflächen, Management Frameworks und Monitoring-Tools.

Docker schafft sich ein eigenes Ökosystem
Foto: Sarunyu_foto - shutterstock.com

Docker nimmt Fahrt auf

Bei Docker handelt es sich um eine Open-Source-Lösung, die sich für die automatisierte Bereitstellung von Applikationen, die in einem Container organisiert sind, einsetzen lässt. Docker nutzt hierzu die Eigenschaften des Linux-Kernels. Dabei werden Ressourcen wie Prozessor, RAM, Netzwerk oder Block-Speicher voneinander isoliert. Auf diese Weise lassen sich Applikationen vollständig von der jeweiligen Umgebung inklusive der Prozesse, Dateisysteme oder des Netzwerks trennen und autonom betreiben. Dadurch lassen sich Applikationen autonom über Systeme hinweg verschieben. Docker kapselt die eigentliche Anwendung und ihre notwendigen Abhängigkeiten wie Bibliotheken in einem virtuellen Container, der sich dann auf jedem beliebigen Linux Server ausführen lässt. (siehe auch "Docker in a Nutshell")

Docker lässt sich über Schnittstellen mit allen führenden Infrastruktur-Umgebungen und -Tools integrieren, darunter Amazon Web Services, Microsoft Azure, Google Cloud Platform, IBM Bluemix, OpenStack Nova, Puppet, Salt, Chef und Ansible. Weiterhin werden die Platform-as-a-Service-(PaaS-)Systeme Cloud Foundry, OpenShift Origin und Apprenda unterstützt.

Die wachsende Bedeutung von Docker beziehungsweise Container-Technologien wird weiterhin durch die im Juni 2015 gegründete "Open Container Initiative (OCI)" unterstrichen. Unter Federführung der "Linux Foundation" hat sich ein Konsortium der Technologieführer unserer digitalen Gesellschaft gebildet. Hierzu gehören etwa Amazon Web Service, Google, Mesosphere, Pivotal, Cisco, IBM, Microsoft, Intel, Red Hat, Oracle und VMware. Die Initiative hat es sich zur Aufgabe gemacht, gemeinsame Standards für Container, ihre Formate und Runtime-Umgebungen zu entwickeln und zu etablieren.

Eines bleibt jedoch festzuhalten. Mit dem Einsatz einer Container-Technologie werden Applikationen erst einmal "nur" in eine portable Form verpackt, nämlich in Container. Dies reicht allerdings nicht aus, um eine komplexe, auf Microservice-Architekturen basierende Applikation oder eine große Applikationslandschaft zu verwalten. Hierfür sind mächtige Management-Tools und Entwicklungs-Plattformen notwendig, um etwa das Continuous Delivery sowie Konzepte wie DevOps zu unterstützen. Dieser Herausforderung ist eine Technologie wie Docker alleine nicht gewachsen. Vielmehr ist ein Ökosystem von Lösungen erforderlich, das sich diesen Themen widmet. Viele Tools rund um das Docker- oder Container- Universum haben sich im Open Container Ecosystem (vormals Docker Ecosystem) versammelt. Hier finden sich Anwendungen, Services und Plattformen zu den Themen Sicherheit, Monitoring, Networking, Orchestration, Management, Container OS, Hosting und Service Provider, Entwickler-Tools, Entwickler-Plattformen und vieles mehr.

Mehr als 20.000 Open-Source-Projekte sind bereits rund um die Container-Technik Docker entstanden.
Foto: Docker

Marktüberblick: Das Docker-Ökosystem

Im Laufe der letzten knapp drei Jahre hat sich rund um Docker eine rasant wachsende Community gebildet, die zu einem passablen Ökosystem geführt hat. Zu den bekanntesten und wichtigsten Tools und Lösungen zählen unter anderem:

1. Docker-Toolbox

Im Februar 2015 hat Docker selbst eine Reihe von Orchestration-Tools veröffentlicht. Hierzu gehören bisher:

2. Kubernetes

Kubernetes ist ein Open-Source Docker-Management-Tool, das von Google entwickelt wurde, um Docker-Container-Applikationen in einer Cluster-Umgebung zu verwalten. Hierzu gehören u.a. die Kommunikationen zwischen den Containern sowie eine gleichmäßige Verteilung von Containern über den Cluster hinweg.

3. Mesosphere

Mesosphere bezeichnet sich selbst als das "Data Center Operating System". Mesosphere bündelt hierzu jede Server-Art (physikalisch, virtuell) zu einem großen Pool von geteilten Ressourcen - einen Cluster. Anhand des "Docker executor for Mesos" lassen sich innerhalb eines Mesosphere-Clusters ebenfalls Docker- Container betreiben.

4. OpenStack

OpenStack ist das führende Betriebssystem, wenn es um den Aufbau und Betrieb einer Open-Source-basierten Cloud-Infrastrukturlandschaft geht. Mit dem "Docker Driver" für "OpenStack Nova Compute" lassen sich ebenfalls Docker-Container auf einer OpenStack-Infrastruktur betreiben.

5. Shipyard

Shipyard ist eine Open Source Docker Management Lösung, mit der sich Docker- Ressourcen wie Container, Images, Hosts usw. über eine einzige zentrale Management-Oberfläche verwalten lassen.

6. Panamax

Panamax ist ein Tool für die Entwicklung, das Bereitstellen und Teilen von Container-baiserten Anwendungen. Dazu gehört auch ein Open-Source Applikations-Markplatz, der auf Github gehosted wird.

7. Drone

Drone ist eine Continuous Integration Platform für Docker. Die Plattform lässt sich auf einem lokalen Laptop oder innerhalb einer eigenen IT-Infrastruktur betreiben.

Container-Techniken sind auch ein wichtiger Bestandteil der "Digital Infrastructure Platform" (DIP).
Foto: Copyright Crisp Research AG, 2015

Container-Technologien als Bestandteil der "Digital Infrastructure Platform"

Container-Technologien sind zudem ein wichtiger Bestandteil der "Digital Infrastructure Platform". Sie stehen repräsentativ für die "Dynamic IT" im technischen digitalen Abbild eines Unternehmens, von dem in der Zukunft immer mehr Geschäftsmodelle unterstützt werden.

Docker-Container helfen nicht nur dabei, Legacy-Applikationen und andere Workloads aus der "Static IT" in die "Dynamic IT" zu überführen, sondern sie verbessern auch:

Fazit

Ein weiteres Argument für CTOs und technische Entscheider ist die Zukunftssicherheit von Docker. Obwohl Docker erst seit ein paar Jahren am Markt ist, wird es bereits von zahlreichen großen Unternehmen eingesetzt, darunter Uber, GE Appliance, Groupon, PayPal, ebay, ING, BBC, Spotify, Zalando oder Yandex. Weiterhin setzen große, eher proprietär agierende Technologie-Unternehmen wie Google oder Microsoft auf Docker und haben die Container-Technologie bereits als Teil ihres Cloud-Angebots integriert.

Eine Technologie alleine ist jedoch kein Erfolgsgarant. Die Vergangenheit hat gezeigt, dass eine mächtige Community und ein Ökosystem rund um die Technologie einen entscheidenden Betrag zur breiten Adaption leisten. Docker ist ein gutes Beispiel für so eine Erfolgsgeschichte. (wh)