Die hybride Cloud mit Docker Swarm und Ansible (2/2)

Seite 5: Fazit

Inhaltsverzeichnis

Mit dem letzten Schritt steht ein vollständig initialisierter Docker Swarm zur Verfügung. Mit Infrastructure-as-Code- und DevOps-Tools wie Vagrant, Packer und Ansible ist es also möglich, ein vollständig nachvollziehbares und automatisiertes Setup eines hybriden Docker Swarm durchführen. Dieser integriert Windows- sowie Linux- Maschinen in allen innerhalb eines solchen Schwarms möglichen Rollen – seien es Manager- oder Worker-Nodes. Dieses Vorgehen erreicht mehrere wichtige Ziele.

Zuallererst lässt sich das berühmte "Works-on-my-Maschine"-Pattern umgehen, auf das leider auch die meisten Blogbeiträge setzen. Jeder Schritt ist zu 100 Prozent nachvollziehbar. Und das sogar für jeden im Entwicklungsteam – mit vertretbarem Einarbeitungsaufwand. Sollten die vielen genutzten Verfahren doch einmal zu unvorhergesehenen Fehlersituationen führen, können Entwickler jederzeit alles von vorn neu aufsetzen. Alles was dazu nötig ist, ist ein Klick und eventuell der Besuch der Kaffeemaschine. Und sollte es einen Fehler geben, kann ein Pull-Request diesen beheben. Besonders in der schnellen Entwicklung in der Welt der Docker-Windows-Container ist das Vorgehen empfehlenswert. Auch die vielen Microservice-Architekturen können von solch einem vollautomatisierten Ansatz nur profitieren, ist doch das Management der Infrastruktur durch die große Anzahl an nötigen Umgebungen nicht mehr sinnvoll manuell machbar.

Zusätzlich zeigt das Setup alle Schritte auf, die nötig sind, um einen hybriden Mixed-OS Docker-Swarm-Cluster aufzusetzen. Dieser ist sofort für ein potenzielles Applikations-Deployment nutzbar – egal, ob die Anwendungen nativ auf Windows oder Linux setzen. Mit dem Einsatz des Vagrant-Multi-Machine-Setup ist alles sogar lokal auf den Entwickler-PCs vollständig nachvollziehbar und nutzbar. So sind die Skripte, die später auf die Stages inklusive Produktion Anwendung finden, auch lokal nutzbar. Der Bruch zwischen lokaler Entwicklung und Staging/Produktion verschwindet damit nahezu vollständig.

Jonas Hecht
führte die Überzeugung, dass Softwarearchitektur und Hands-on-Entwicklung zusammengehören, zu codecentric. Tiefgreifende Erfahrungen in allen Bereichen der Softwareentwicklung großer Unternehmen treffen bei ihm auf eine Leidenschaft für neue Technologien.
(bbo)