Archiv für den Monat: Dezember 2014

Virtualisierung und zentrale Konfiguration mit Docker und SaltStack

Durch die stetig steigenden Infrastrukturanforderungen und den immerwährenden Wunsch nach Skalierbarkeit sehen sich Entwickler und Administratoren heute deutlich größeren Anforderungen ausgesetzt als noch vor einigen Jahren: Systeme müssen schnell und automatisiert ans Netz gebracht, Konfigurationsänderungen zeitnah verteilt und ausgefallene Hardware so schnell als möglich ersetzt werden.

Mit unseren Kursen zu SaltStack und Docker bietet wir im Linuxhotel im Februar bzw. Mai 2015 wieder einen Einblick in die Welt der Virtualisierung und der so genannten Orchestrierung an, die unter anderem das Konfigurationsmanagement und die Softwareverteilung beinhaltet.

Dozent für den SaltStack-Kurs ist Peter Roßbach, der in den letzten Jahren umfangreiche Erfahrung in komplexen DevOps-Projekten gesammelt hat, unter anderem durch seine Tätigkeit als Systemarchitekt für den E-Postbrief der Deutschen Post, als Mitglied eines Research-Projekts der Deutschen Bank und als Entwickler von skalierbaren Java Web-Applikationen. Als Committer im Apache Tomcat-Projekt engagiert, kennt Peter die Anforderungen der heutigen Infrastruktur wie seine Westentasche, gibt sein Wissen unter anderem in Artikeln für Fachmagazine weiter und arbeitet als freiberuflicher Systemarchitekt mit Schwerpunkt auf komplexen Infrastrukturlösungen.

Im Linuxhotel ist Peter bereits seit dem Jahr 2003 mit seinem Tomcat-Kurs aktiv. „Mein Credo ist es, den Kursteilnehmern beizubringen, die technischen Möglichkeiten und deren Sinn zu verstehen und sie als Teil eines großen Ganzen zu betrachten statt als isolierte Insellösungen. Diesen Gedanken bringe ich auch regelmäßig in meine Kurse ein, denn die Teilnehmer sollen neben den technischen Fachkenntnissen auch lernen, ihre eigene Entscheidungsqualität zu verbessern und bestimmten Designentscheidungen durchaus kritisch gegenüberzustehen.“

Diesem Konzept folgend hat Peter sich zunächst mit anderen Tools für das Konfigurationsmanagement befasst: „Am Ende waren mir diese Klassiker allerdings zu über-abstrahierend – an SaltStack gefällt mir hingegen, dass es einzelne Probleme löst, bei denen man sich nicht in der bloßen Menge an Optionen und Möglichkeiten verliert, und dass die Konfiguration mit einfach strukturierten Textdateien bewerkstelligt wird. Kurz gesagt: Einfacher ist besser, weniger ist mehr“, erklärt er seine Philosophie, und fügt hinzu: „State of the art ist heutzutage eine reaktionäre Infrastruktur, bei der sich der Client (im SaltStack-Terminus „Minion“ genannt) auch spontan mit dem Master abgleicht, im Falle von SaltStack via MessageBus. Im Gegensatz zum in der Vergangenheit oftmals statischen Ansatz bringt das einige Vorteile mit sich, denn um heutzutage marktfähig zu bleiben, müssen Anbieter dynamisch und schnell reagieren können und ihre IT passgenauer auf das ausrichten, was gerade erforderlich ist. Die Nutzung einfacherer Prinzipien und das Arbeiten mit kleinen, überschaubaren Teilen helfen ungemein, hier nicht den Überblick zu verlieren. Das Besondere an Saltstack ist, dass die Lösung massive skaliert und eine hervorragende Cloud-Unterstützung besitzt.“

Docker und SaltStack gehen dabei perfekt Hand in Hand und bauen aufeinander auf – nicht nur, dass SaltStack selbst intern Docker nutzt, die beiden Komponenten lassen sich auch ideal miteinander verbinden, um überzeugende Infrastruktur-Lösungen und Cloud-Angebote zu entwickeln (siehe auch Peter’s Vortrag zu „Docker and SaltStack“). Docker geht von einem unveränderbaren Image im Applikations-Container aus, welches sich wiederum problemlos mit SaltStack konfigurieren und bereitstellen bzw. verteilen lässt. So arbeitete Peter Roßbach neben seinem Engagement für Salt auch am Entwickler Magazin Spezial Vol.2: Docker mit und plant zudem ein deutschsprachiges Buch über Docker. Auch in der sehr agilen Community engagiert er sich, so ist er beispielsweise am Aufbau der deutschsprachigen Docker-Plattform beteiligt und postet regelmäßig in seinem Blog InfraBricks.

Die Kurse sind dabei insbesondere für Administratoren gedacht, die größere und dynamischere Umgebungen betreuen müssen, richten sich aber ganz bewusst an Einsteiger in diese Thematik. Linux-Grundlagen, grundlegende Kenntnisse zu Netzwerken und idealerweise schon Grundkenntnisse in Python und Docker sind jedoch zu empfehlen. Neben der grundlegenden Philosophie hinter SaltStack und den wesentlichen Konzepten und Elementen, wie zeit- und ereignisgesteuerte Aktionen, spricht Peter Roßbach auch konkrete Fallbeispiele an, beispielsweise das Aufsetzen eines HTTP-Servers, aber auch die Bereitstellung eines Loadbalancers für komplexere Umgebungen im Rahmen eines Clusters virtueller Maschinen. Dabei kommen auch Tipps zum Logging und Monitoring, zur Fehlerbehebung, die Nutzung des integrierten Werkzeugs zur Berichterstellung und Best Practice nicht zu kurz.

Auch der Docker-Kurs, der ebenfalls im Linuxhotel angeboten wird, beginnt mit einer Einführung in die Thematik an sich, gibt einen Überblick über die Architektur des Systems und führt die Teilnehmer dann Schritt für Schritt hin zum Bauen des ersten eigenen Containers (Image) sowie zu dessen Verteilung. Auch die Integration von Docker in die bestehende Infrastruktur samt Verbinden einzelner Container und Nutzung von Volumes sowie das Logging kommen nicht zu kurz.

In beiden Kursen, die im Februar bzw. Mai 2015 stattfinden, sind noch Plätze frei!