Suche
Interview mit Christian Johannsen

Container in Production: Welche Herausforderungen gibt es?

Hartmut Schlosser

Christian Johannsen

Container haben sich in Entwicklungs- und Testszenarien mittlerweile etabliert. Doch wie sieht es mit dem Einsatz von Containern in Produktionsumgebungen aus? Wir haben mit Christian Johannsen, Solutions Architect bei Chef und Sprecher auf der DevOpsCon 2017, über die aktuellen Herausforderungen gesprochen, um Container auch im Betrieb zu nutzen.

Treffen Sie Christian Johannsen auf der kommenden DevOpsCon 2017. Dort wird er über die Möglichkeiten sprechen, Cloud-basierte Anwendungen mit dem Konfigurations-Management-Tool Chef zu automatisieren. Session: Moderne Applikations-Automatisierung mit Chef

TIPP: Die DevOpsCon 2017 findet vom 20. bis 23. November in München statt. Bis zum kommenden Donnerstag, 19. Oktober gelten noch die Frühbucher-Specials: Infos unter www.devopsconference.de

#

Container in Production

JAXenter: Welche aktuellen Herausforderungen gibt es, um Container in Produktionsumgebungen zu betreiben?

Christian Johannsen: Eine der Herausforderungen ist sicherlich, die Leichtigkeit, mit der man Container im Test- und Dev-Umfeld benutzt, also in Applikations- und Entwicklungsumgebungen, in die Produktion zu übertragen. Das Problem daran ist, dass man in der Produktions-IT heute die Herausforderungen hat, die jedes Unternehmen hat: Man muss Sicherheit und Stabilität gewährleisten, und gerade wenn es um kritische Services geht, die tatsächlich auch einen Einfluss auf die Kunden-IT oder das Kundenverhalten haben, wie z.B. Webservices für Kundenshops, muss man sehr vorsichtig voegehen. Es ist nicht trivial, so etwas heute einfach einmal aus dem Entwicklungsumfeld in die Produktion zu treiben, weil man hier doch ganz anderen Regeln unterliegt.

JAXenter: Kannst du vielleicht einmal ein Beispiel nennen, wo etwas im Development-Umfeld funktioniert aber in der Produktion gar nicht mehr so einfach ist?

Christian Johannsen: Ein häufiges Beispiel ist, dass man ein komplettes Image im Test-/Dev-Umfeld baut und diese Artifakte dann gegen spezielle Container testet. Man sagt: „Ok, wir testen das gegen ein Ubuntu, wir testen das gegen verschiedene Betriebssysteme, gegen ein RedHat-Linux, etc.“ Dann bringt man dieses Paket in die Produktion und stellt fest, dass das RedHat oder das Ubuntu einen komplett anderen Updatestand hat, weil die Produktion ja davon lebt, Sicherheitslücken zu fixen, bestimmte Updates einzuspielen, etc. Damit verhält sich meine Applikation vielleicht plötzlich ganz anders. Das heißt, was eben in meinem Test noch einwandfrei funktioniert hat, von dem ich auch sicher war, dass es gegen dieses Betriebssystem funktioniert, weil es im Container getestet wurde, mag in Produktion gar nicht mehr so funktionieren. In diesem Beispiel muss ich also gewährleisten, dass die Container in Produktion genauso aussehen wie im Testumfeld.

JAXenter: Wenn man das breitere Umfeld der Containertechnologien anschaut: Wo stehen wir da heute? Sind wir immer noch am Anfang einer Entwicklung, die manche als „Revolution der Container“ bezeichnen? Oder sind wir schon so weit, dass wir Container-Anwendungen zuverlässig in Betrieb bringen können?

Christian Johannsen: Ich würde das in der Tat ein wenig differenzierter sehen. Wir haben in der Produktions-IT Legacy-Systeme, die wir heutzutage betreiben müssen. Das ist auch gut so, und wir sehen dort eher den Shift hin zur Automatisierung. Wir unterstützen etwa Unternehmen dabei, die IT-Infrastruktur und die Deployments zu automatisieren.

Wir sehen aber auch jüngere Unternehmen, deren Aufgabe vielleicht der Betrieb einer Webseite oder eines Onlineshops ist, wo eine ganz andere Adaptionsrate stattfindet. Hier sprechen wir nicht von einer Enterprise-IT mit hunderten an Personen oder involvierten Abteilungen, sondern von agilen Teams, die in der Lage sind, Microservices-Architekturen für ihre Applikationen wirklich abzubilden und das in Produktion zu bringen.

Es gibt also beide Beispiele. Häufig sehen wir aber auch einen Mittelweg. Die traditionelle IT versucht, diese neue IT zu betrachten, zu bewerten und dann schlussendlich vielleicht auch zu adaptieren. Wir wissen heute aber noch nicht, welche Lösungen sich durchsetzen werden. Wir sehen, wer in diesem Bereich tätig ist, wir sehen Docker, wir sehen Rocket, wir sehen Mesosphere, wir sehen Kybernetes, CoreOs, und selbst die „Oldplayer“ wie VMware, für die ich gearbeitet habe, als die Virtualisierung damals losging. Dort hatten wir einen ähnlichen Shift: Die Leute haben die neuen Möglichkeiten gesehen, haben sie nicht sofort adaptiert, haben aber versucht, damit herumzuspielen. Und heute haben wir eine Adaptionsrate von 80, 90% von Virtualisierung im Produktions-IT-Umfeld.

Ich denke, das wird über kurz oder lang mit Containern ähnlich werden. Allerdings braucht es dazu auch den Umbruch auf der Applikationsseite, dass die normale Anwendung, die ich heute betreibe, mein Sharepoint-Server oder so etwas, auch in dieser Architektur abgebildet werden kann.

JAXenter: Welche Lösungen gibt es von Chef, um diese Probleme in den Griff zu kriegen?

Christian Johannsen: Unsere aktuelle Lösung im Bereich der Containerisation ist Habitat. Habitat ist Open Source und hat zum Ziel, Meta-Informationen einer Applikation an die Applikation zu binden, also etwa zu sagen: „Wir wissen noch nicht, ob das Ziel ein Dockercontainer oder ein Kubernetescluster oder vielleicht auch eine Bare-Metal-Installation ist.“

Wir packen diese Informationen an die Applikation und bringen sie mit einem Exportkommando auf die Zielarchitektur. Dort übernimmt dann der Kubernetesmanager, AWS, das V-Center oder was auch immer die Zielarchitektur ist, und bringt die Systeme sozusagen ins Leben sozusagen. Die Bestandteile unterhalten sich aufgrund unserer Architektur miteinander und bilden eine Infrastruktur.

JAXenter: Was kommt als nächstes von eurer Seite? Gibt es neue Versionen, neue Tools?

Christian Johannsen: Also wir leben DevOps. Wenn man auf unsere Webseite schaut, dann sieht man, dass wir nahezu jede Woche ein Release haben. Ob das für das Config-Management ist, für Habitat oder für unsere Security- & Compliance-Language-Spec ist. Wir leben den Gedanken, dass wir alles in kleinen Commits in Produktion bringen. Aus unserer Sicht ist der Schritt für die Kunden heute, dass sie in eine gesicherte Zukunft gehen wollen und die Kliffs, die heute noch existieren zwischen dem, was ich in der Entwicklung lerne und was ich in Produktion bringe, umschiffen.

JAXenter: Vielen Dank für dieses Interview!

Christian Johannsen is a Solutions Architect at Chef, covering the DACH region. Christian was an integration and automation specialist in the virtualisation space and wanted to get more involved with the DevOps scene. His experience in these specialisms are what now allow him to help customers integrate the Chef framework into new and existing environments. His work across many customers provides him with a good perspective on both the technical and cultural aspects of implementing DevOps solutions.
Geschrieben von
Hartmut Schlosser
Hartmut Schlosser
Hartmut Schlosser ist Redakteur und Online-Koordinator bei Software & Support Media. Seine Spezialgebiete liegen bei Java-Enterprise-Technologien, JavaFX, Eclipse und DevOps. Vor seiner Tätigkeit bei S & S Media studierte er Musik, Informatik, französische Philologie und Ethnologie.
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.