The Doppler Quarterly (DEUTSCHE) Winter 2016 | Page 47
Kein Rätselraten mehr: die Tool-
landschaft für Docker-Container
Jon Baier
Unsere Einschätzung der wichtigsten Tools für die
Container-Koordinierung und der Richtung, in die sich der Markt bewegt.
Die Landschaft der Koordinierungstools
Rund um Docker und Container gibt es reichlich
Dynamik, Begeisterung und Energie – und eine große
Bereitschaft, dieses neue Modell zumindest in Ent-
wicklungs- und Testumgebungen einzuführen. Ange-
sichts dieser Begeisterung und der Einführung durch
die Entwickler tun Unternehmen gut daran, sich
langsam mit dem Management des Container-Chaos
zu beschäftigen.
Um Sie dabei zu unterstützen, möchten wir Ihnen
einen Überblick geben, wie der Stand der Dinge ist
und was wir in den kommenden Monaten erwarten
können.
Eine der Schwierigkeiten bei den aktuellen Tools
besteht darin, dass sie nur in einigen Bereichen Über-
schneidungen aufweisen und ihre Gesamtfunktiona-
lität nicht direkt verglichen werden kann. Viele der
Tools sind austauschbar, andere wiederum ergänzen
sich in manchen Fällen. Um Ihnen hier sozusagen als
Leuchtturm zu dienen, haben wir die Tools anhand
von fünf Schlüsselattributen beurteilt: Hochverfüg-
barkeit, Skalierbarkeit und Einsatz in der Praxis, Ein-
fachheit der Einführung, Vernetzung und Erweiter-
barkeit über Container hinaus. In der letzten
Kategorie achteten wir auf die Möglichkeit, das Tool
mit verschiedenen Entwicklungsprojekten zu kombi-
nieren, darunter auch Projekte, die nicht containero-
rientiert sind oder auch nur entfernt etwas mit Con
tainern zu tun haben.
Hochverfügbarkeit
Es wurden hier drei Funktionen ausgewählt, die sich
leicht vergleichen lassen und für die Hochverfügbar-
keit speziell von Clustern wichtig sind. Zunächst
sehen wir uns das Master-Failover an. Dazu gehört
die Möglichkeit des Failovers für einen Cluster-Mas-
ter und der Auswahl einer bestehenden Maschine als
neuen Master. Die nächste untersuchte Funktion ist
die Statusprüfung oder die Fähigkeit des Systems zu
erkennen, wann die Anwendung und der Cluster
wirklich verfügbar sind. Und schließlich sahen wir
uns die automatische Neueinteilung nach einem Aus-
fall an. Wenn ein Teil des Clusters ausfällt, möchten
wir sicher sein können, dass unsere Contai
ner-
Workload neu angesetzt und neu gestartet wird.
Mesos verfügt über einen Hochverfügbarkeitsmodus,
der auf Apache ZooKeeper basiert. Im HA-Modus
werden mehrere Master ausgeführt. Ein aktiver Mas-
ter wird zum „Leader“ gekürt. Falls der aktive Master
ausfällt, wird ein neuer Master ausgewählt. Auch
Swarm und Kubernetes unterstützen eine „hoch ver-
fügbare“ Master-Konfiguration. Diese Funktion ist
nicht sofort einsatzfähig, doch es gibt bei beiden
Tools Leitfäden für die Einrichtung.
Swarm, Mesos und Kubernetes verfügen alle über
TCP/HTTP-Methoden für die Statusprüfung. Die
befehlsbezogene Statusprüfung geht noch einen
Schritt weiter: Damit können bestimmte Befehle aus-
geführt und geprüft werden. K8s unterstützt diese
Art der Prüfung bereits seit einer Weile nativ. Außer-
dem beinhaltet Kubernetes integrierte Konstrukte
für Services. Mithilfe der Statusprüfungen lässt sich
beurteilen, welche Hosts stabil genug sind, um Ser-
viceverkehr zu verarbeiten. Auch Mesos unterstützt
befehlsbezogene Statusprüfungen und korrigierte
kürzlich einige der Probleme, die ihre Nutzung zuvor
verhinderten.
Und schließlich können sowohl Mesos als auch K8s
Container neu einteilen. Bei einem Hostausfall wird
WINTER 2016 | THE DOPPLER | 45