Interview mit Dr. Daniel Bryant, Chief Scientist bei SpectoLabs

„DevOps, Cloud, Container, Microservices ergänzen sich wunderbar – aber muss man jetzt gleich alles machen?“

Gabriela Motroc

Daniel Bryant

Wie sieht die Zukunft von DevOps aus, wie verbreitet es sich weiter? Wie wichtig ist die Containerisierung im DevOp-Kontext und inwiefern kann die Cloud die DevOps-Transformation eines Unternehmens verbessern? Antworten gibt Daniel Bryant, Chief Scientist bei SpectoLabs und Sprecher auf der DevOpsCon 2017.

Was ist denn eigentlich dieses „DevOps“?

JAXenter: Die einen nennen es eine kulturelle Bewegung, andere sprechen von Tools für Continuous Delivery, Containern, Microservices, der Cloud. Was macht für dich das Wesen von DevOps aus?

Bei DevOps geht es um ein gemeinschaftliches Verständnis von Business- und IT-Funktionen.

Daniel Bryant: DevOps baut meinem Verständnis nach essentiell auf dem Prinzip der Shared Ownership auf. Es geht zentral um ein gemeinschaftliches Verständnis von Business- und IT-Funktionen innerhalb eines Unternehmens. Wir sagen dazu zwar „DevOps“, was sich auf „Development“ und „Operations“ bezieht. Aber genauso gut hätten wir die Bewegung „BuDevQaOps“ nennen können: Business-Development-QA-Operations. Denn normalerweise müssen all diese Bereiche gemeinsam an einem Strang ziehen, damit in der modernen Wirtschaftswelt Software schnell und sicher ausgeliefert werden kann. Allerdings klingt „BuDevQaOps“ nicht so cool wie „DevOps“…

Doch wie bei allem im Bereich der technologischen Entwicklung hat auch DevOps definitiv keine Patentrezepte im Gepäck. Obwohl DevOps-artige Arbeitsmethoden schnell den Erfolg eines Unternehmens erhöhen können, muss man immer das größere Bild im Auge behalten: die einheitliche Ausrichtung des gesamten Geschäftsbereichs, die richtige  Organisationsstruktur und Buchführungspraxis, die Bereitschaft zu lernen und Experimente anzustellen, angemessene Technologie-Entscheidungen und deren korrekte Implementierung, usw.

DevOps Docker Camp 2017

Das neue DevOps Docker Camp – mit Erkan Yanar

Lernen Sie die Konzepte von Docker und die darauf aufbauende Infrastrukturen umfassend kennen. Bauen Sie Schritt für Schritt eine eigene Infrastruktur für und mit Docker auf!

JAXenter: DevOps hat sich seit seinen Anfängen 2008 sicherlich weiterentwickelt. Wie du sagst, geht es längst nicht mehr nur um eine verbesserte Zusammenarbeit zwischen Devs und Ops. Kannst du einmal einen aktuellen DevOps-Trend beschreiben, den du besonders interessant findest? 

Daniel Bryant: Auf der technischen Seite von DevOps geht einer der Trends hin zu unveränderlichen, programmierbaren Infrastrukturen. „Infrastructure as Code“ wurde populär durch die Einführung von Public-Cloud-Technologien und Tools wie Puppet und Chef. Neu hinzu kommt nun die zunehmende Nutzung von Containern und Serverless-Technologien, durch die die Infrastrukturen immer mehr zu unveränderlichen und damit portierbaren Artefakten werden.

Lesen Sie auch: Die drei Säulen von DevOps: Lean, Lernen, Vertrauen – Interview mit John Willis

Diese Unveränderlichkeit von Infrastruktur und Deployment-Artefakten hat große Vorteile, weil sie es ermöglicht, Umgebungen während des Auslieferungszyklus, also bei der Entwicklung, der QA und der Inbetriebnahme, viel einfacher zu provisionieren und zu pflegen. Im Laufe meiner Karriere habe ich häufig gesehen, wie veränderbare Infrastruktur und individuell eingestellte „Schneeflocken-Server“ – also jeder Server mit leicht unterschiedlichen Konfigurationseinstellungen –  viele Probleme verursacht haben. Denn es ist keineswegs trivial, Produktions-ähnliche Bedingungen sowohl bei Devs als auch bei den Testern zu reproduzieren. Und man kann ebenso wenig garantieren, dass ein Deployment auf allen Servern funktionieren wird.

DevOps Tools & Technologien

JAXenter: DevOps ist mehr als ein Technologie-Trend – es geht in einem größeren Kontext um die Transformation ganzer Unternehmen. Wie sollte man einen solchen Transformationsprozess beginnen? Was gehört deiner Erfahrung nach in einen DevOps-Werkzeugkasten?

Daniel Bryant: DevOps überschneidet sich zu einem gewissen Grad mit den Feldern „Digitale Transformation“ und dem traditionellen Veränderungsmanagement. Das mag bei dem einen oder anderen für Verwirrung sorgen. Doch gehört diese Verschmelzung wohl unvermeidbar zu jeder Verbreitung populärer Technologien – Verkäufer wollen eben Produkte verkaufen, und Berater möchten Dienstleistungen anbieten.

Anstatt bestimmte Tools zu empfehlen, rate ich den Leuten lieber, das „DevOps Handbook“ zu lesen, herausgegeben von Gene Kim und anderen, sowie dessen Vorgänger „The Phoenix Project“. Außerdem empfehlenswert: „Continuous Delivery“ von Jez Humble und Dave Farley, „Infrastructure as Code“ von Kief Morris, „The Art or Business Value“ von Mark Schwartz, sowie „Leading Change“ von John Kotter.

Ich betone immer, dass Werte, Prinzipien und Praktiken wichtiger sind als individuelle Entscheidungen für Technologien und hoffe, dass die Leute mit Hilfe dieser Bücher in der Lage sein werden, ihren eigenen DevOps-Werkzeugkasten zusammenzustellen. Außerdem würde ich dazu raten, klein anzufangen, schnell zu experimentieren und das Gelernte wiederholt zu reflektieren.

JAXenter: Welche Rolle spielt die Cloud im DevOps-Kontext?

Der größte Vorteil der Cloud ist die Flexibilität.

Daniel Bryant: Der größte Vorteil der Cloud ist die Flexibilität – man kann Infrastruktur schnell hochziehen und wieder abreißen, ganz so wie es einem passt. Das fördert die Experimentierfreudigkeit und vereinfacht zudem das Skalieren. Außerdem begünstigt die Cloud Prinzipien wie die Separation of Concerns und eine kontextbezogene Fachexpertise – ich wette beispielsweise, dass AWS ein sichereres Datenzentrum betreiben kann als die meisten anderen IT-Organisationen. Zu einem gewissen Grad können Kosten durch die Cloud gespart werden, aber das sollte nicht die Hauptmotivation für eine Cloud-Strategie sein.

Die SaaS-basierten Angebote von Cloud-Anbietern erlauben es Unternehmen beispielsweise, auf elegante Art und Weise einen Teil der operativen Verantwortung von sich weg zu delegieren, was neue Möglichkeiten eröffnet. Zum Beispiel würden einige Unternehmen nur sehr ungern ein groß-skaliertes Container Management System oder MySQL Cluster betreiben wollen. Genau deshalb können sie Google Cloud Platform GKE oder AWS RDS nutzen und damit einen großen Teil der operativen Last von sich abschütteln. Darüber hinaus eröffnen Cloud-Anbieter wie AWS, GCP und Azure weitere Möglichkeiten, indem sie zusätzliche SaaS-Dienste anbieten, beispielsweise KI-basierte Services wie das GCP Vision API und der AWS Alexa Voice Service.

JAXenter: Container revolutionieren die IT-Infrastruktur, DevOps verändert die moderne IT-Landschaft. Passen die beiden gut zusammen?

Daniel Bryant: Ja, Container und DevOps passen gut zusammen. Aber man sollte dazusagen: Es muss nicht alles gleichzeitig implementiert werden – und manches auch gar nicht. Meiner Erfahrung nach ergänzen sich DevOps, Cloud, Container und Microservices wunderbar. Allerdings sollte die erste Aktion einer Organisation, die DevOps einführen möchte, darin bestehen, zunächst einmal ihre eigene Situation zu evaluieren, Ziele festzulegen und herauszufinden, wie diese Ziele erreicht werden können.

Wenn ein Unternehmen beispielsweise die Frequenz der Deployments erhöhen möchte, sollte es am besten Probleme innerhalb ihrer Architektur adressieren und darin investieren, ihre gegenwärtige Infrastruktur zu automatisieren, anstatt überstürzt alles auf Microservices, Cloud und Container zu setzen.

Lesen Sie auch: Missverständnisse rund um DevOps – und wie man es richtig macht

Wie man DevOps-Hürden abbaut

JAXenter: Was sind die Anti-Patterns von DevOps?

Daniel Bryant: Im weitesten Sinne ist es das größte Anti-Pattern, nicht zu verstehen, was DevOps eigentlich ist bzw. was man erreichen möchte, wenn man sich dieser neuen Arbeitsweise annähert. Ich möchte auf alle Fälle davon abraten, DevOps nur einseitig anzugehen – es also ausschließlich als ein organisatorisches Problem oder nur als einen technischen Prozess zu verstehen. Stattdessen würde es zum Beispiel deutlich helfen, die Zusammenarbeit in einem Unternehmen mit Hilfe der richtigen Organisationsstruktur – etwa durch gut koordinierte, multi-funktionale Teams – zu erhöhen und dies mit der Implementierung einer Continuous Delivery Build-Pipeline zu kombinieren. Mehr zu dem Thema werden ich übrigens auf der DevOpsCon in meiner Session „Continuous Delivery with Containers: The Good, the Bad, and the Ugly“ sagen.

JAXenter: Habst du Tipps, um Hindernisse bei der Einführung von DevOps zu vermeiden?

Daniel Bryant: Lest die oben genannten Bücher – das ist mein erster Tipp. Zudem hilft es, sich über die gegenwärtigen Situation und die eigenen Ziele im Klaren sein. Meine Zeit als Akademiker hat mich gelehrt: „Stand on the shoulders of giants.“ Es ist wichtig, von den Fehlern und Erfolgen anderer Unternehmen zu lernen.

Es gibt darüber hinaus viele Videos von der DevOps Enterprise-Konferenz (2014 und 2015), welche sehr hilfreich sind für Personen, die in größeren Unternehmen arbeiten.

Vielen Dank für dieses Interview!

Daniel Bryant is leading change within organisations and technology with OpenCredo. His current work includes enabling agility within organisations by introducing better requirement gathering and planning techniques, focusing on the relevance of architecture within agile development, and facilitating continuous integration/delivery. Daniel’s current technical expertise focuses on DevOps tooling, cloud/container platforms and microservice implementations. He is also a leader within the London Java Community (LJC), contributes to several open source projects, writes for well-known technical websites such as InfoQ, DZone and Voxxed, and regularly presents at international conferences such as JAX, QCon, JavaOne and Devoxx.

Mehr zum Thema:

DevOps – eine Bestandsaufnahme: „Wenn die Unternehmenskultur nicht stimmt, wird der ganze Rest an irgendeinem Punkt fehlschlagen“

Verwandte Themen:

Geschrieben von
Gabriela Motroc
Gabriela Motroc
Gabriela Motroc ist Online-Redakteurin für JAXenter.com. Vor S&S Media studierte Sie International Communication Management an der The Hague University of Applied Sciences.
Kommentare

Schreibe einen Kommentar

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