Wer sich im Netz öfters über neue Applikationen und deren Verbreitungswege informiert, wird besonders bei Serversoftware über Docker Images gestolpert sein. Dieses scheint in den letzten Jahren bei Softwareherstellern wie bei Administratoren rasant steigende Beliebtheit zu genießen. Anbei eine kurze Zusammenfassung für jene wie mich, die von diesem Trend ein wenig überrascht wurden.
Effektiver als virtualisierte Maschinen
Docker erreichte die Produktionsreife erst kürzlich – im Jahr 2014 – und verbreitet sich auf Serverbetriebssystemen und in Rechenzentren rasend schnell und verdrängt dabei herkömmliche Systemvirtualisierung. Es erzielt große Einsparungen in Bereichen, in denen Virtualisierung Produktivitätszuwächse generiert und Erleichterungen auch für kleine oder private Serverbetreiber, die ihren Administrationsaufwand verringern möchten oder häufig neue Software ausprobieren.
Herkömmliche Virtualisierungen wie Hypervisoren, VMWare, Xen oder KVM emulieren virtuelle Hardware, was einen beträchtlichen Mehraufwand (Overhead) erzeugt. Docker Container setzen dagegen auf einem Betriebssystem und gemeinsam benutzte Komponenten auf, was den Overhead verringert und es theoretisch ermöglicht ein Vielfaches an Applikationen auf derselben Maschine aufzusetzen.
In der Regel setzt Docker auf einem Linux Betriebssystem auf und macht sich besondere Eigenschaften des Kernels zu Nutze (namespaces und cgroups). Es benötigt also nicht ein völlig isoliert laufendes Betriebssystem innerhalb des Containers, sondern funktioniert im direkten Austausch mit dem Hostsystem. Platform-as-a-service ist hierbei das Stichwort. Ich hoffe es so auch dem Laien verständlich gemacht zu haben, woher die großen Ressourcenersparnisse kommen.
Das Konzept scheint jedenfalls zu überzeugen, denn besonders die sonst sehr auf Sicherheit und Stabilität bedachten Finanzinstitute scheinen Docker bereits sehr schnell zu adaptieren.
Unterm Strich gibt es jedenfalls mehr Leistung für das gleiche Geld und dafür gibt es bekanntlich immer ein reges Interesse.
Wie kann ich es nutzen?
Angenommen, Sie unterhalten ein kleines Netzwerk oder IT-Umgebung und erhalten keinen professionellen Support, wollen aber von der erleichterten Einsetzbarkeit, Skalierfähigkeit und Wartbarkeit profitieren. Wie stellt man dies am ehesten an?
Integrierte Services
Wenn Sie Ihre IT-Dienste nicht on-site, also nicht im eigenen Netz, vorhalten möchten gibt es bereits eine Reihe namhafter Anbieter, welche die Möglichkeit zur Einbindung von Docker-Container bereits ermöglichen. Dazu gehören:
- Amazon Web Services
- Google Cloud Platform
- Microsoft Azure
- Oracle Container Cloud Service
- Red Hat Openshift
- Hostinganbieter, welche zu zahlreich zur Aufzählung sind
Auf eigener Hardware
Natürlich ist es auch möglich Docker auf einem eigenen Server zu betreiben. Die Installation ist für viele unterschiedliche Systeme ein sehr gut dokumentierter Vorgang. Hierbei können Sie die Vorteile von Docker hervorragend nutzen. Sollte Ihre eigene Hardware für den Zweck irgendwann nicht mehr ausreichen, ist es ein leichtes den Container als Ganzes auf ein anderes System oder einen der oben genannten Serviceanbieter zu transferieren. Auch ist es so möglich einen Container vorab gründlich zu testen, bevor ein kostenpflichtiger Dienst in Anspruch genommen werden soll.
Fazit
Platform-as-a-Service ist als Thema nicht völlig neu, allerdings etwas, das durch Cloudtechnologie der letzten Jahre enorm an Traktion gewonnen hat. Es erleichtert die Administration von Software, deren Ausbringung durch den Hersteller und macht Dienste skalierfähig.