Lights, Camera, Action: Am 24. März ging unser erstes Online-Meetup live – und zwar als Hybrid-Veranstaltung, denn unser Team nahm von unterschiedlichen Locations aus an dem Stream teil. In unserem Live-Studio im MY.O München waren Patrick Arnold und Jana Ullmann vor Ort; Benjamin Roschanski wählte sich von seinem Homeoffice aus ein.
Unsere beiden DevOps-Experten gaben den Zuschauern in einem etwa einstündigen Vortrag einen Deep Dive in die aktuellen Entwicklungen. Dabei standen die folgenden vier Aspekte zu DevOps im Vordergrund:
1. Technologie & Tooling
2. Architektur & Design
3. Mindset & Kollaboration
4. Arbeitsorganisation
Automatisierung ist der Schlüssel zu einem reibungslosen DevOps-Prozess
Im ersten Teil des Vortrags zeigte Patrick Arnold auf, welche technologischen Implikationen DevOps mit sich bringt. Den Begriff „DevOps“ definierte er zunächst wie folgt:
Im DevOps-Prozess haben Entwicklung und Betrieb zwar nach wie vor noch getrennte Aufgaben. So ist die Entwicklung für die Phasen „plan“, „code“, „build“, „test“ verantwortlich, der Betrieb für die Phasen „release“, „deploy“, „operate“, „monitor“. Allerdings sind diese in einem iterativen Prozess ineinander verschlungen, sodass beide Bereiche die Abläufe des jeweils anderen berücksichtigen müssen. Sowohl für die Entwicklung als auch den Betrieb stehen eine große Bandbreite an Technologien und Tools – viele davon Open Source – bereit.
Allerdings wird es für einen einzelnen Mitarbeiter kaum möglich sein, alle Schritte und die darin geforderten Technologien zu beherrschen. Hierzu wurde dank einer einer Teilnehmerfrage eine gute Diskussion über skalierte DevOps-Modelle gestartet, die mit dem Expertenfazit „dass eine Einteilung zwischen Dev und Ops keineswegs hinfällig ist – die Unabhängigkeit und E2E-Verantwortung aber geregelt sein muss“ abgeschlossen wurde.
Vielmehr geht es bei einer erfolgreichen DevOps-Einführung darum, Automatisierung sinnvoll einzusetzen. Wie genau, wird aus der folgenden Folie ersichtlich:
Dementsprechend lautete das Fazit der ersten Hälfte der Präsentation: Die zentrale Aufgabe aus Sicht der Technik innerhalb einer DevOps-Initiative ist die Automatisierung. Architekturansätze, die Microservices und Cloud einbeziehen, können sich zudem positiv auf diese Aufgabe auswirken – dies ist aber kein Muss.
Ein agiles Mindset ist auch bei DevOps gefragt
Den zweiten Teil des TechSnacks präsentierte Benjamin Roschanski. Er sprach über organisationsbezogene Herausforderungen, welche der DevOps-Ansatz mit sich bringt. Ein passendes Mindset stellt den Ausgangspunkt dar, um DevOps sinnvoll einzusetzen. Hierbei kommen die Prinzipien des Manifests für agile Softwareentwicklung zum Tragen:
· Individuen und Interaktionen mehr als Prozesse und Werkzeuge
· Funktionierende Software mehr als umfassende Dokumentation
· Zusammenarbeit mit dem Kunden mehr als Vertragsverhandlung
· Reagieren auf Veränderung mehr als das Befolgen eines Plans
In der Softwareentwicklung sind diese weithin bekannt und akzeptiert. Doch auch der IT-Betrieb kann aus ihnen Best Practices für die tägliche Arbeit ableiten. Beispielsweise lässt sich die Kommunikation bei Betriebsstörungen erheblich verbessern, wenn statt eines Ticket-Systems ein individuelles Gespräch mit Screensharing zum Einsatz kommt. Bei auftretenden Problemen sollten mögliche Lösungen als erstes ins Bewusstsein treten, dann erst die in den Vertragsklauseln vereinbarten Service Level Agreements (SLA).
Wie kann nun eine Einführung von DevOps konkret aussehen? Dies lässt sich nach den fünf Schritten des ADKAR-Modells planen und umsetzen. Es ist aufgebaut wie folgt:
Awareness – Ein Problem ist vorhanden und bekannt; zum Beispiel, dass bei Deployments regelmäßig Probleme auftreten.
Desire – In Retro-Meetings taucht der Wunsch auf, es in Zukunft besser zu machen; dabei entsteht die Idee, mit DevOps zu arbeiten.
Knowledge – Das Team eignet sich das Wissen darüber an, wie DevOps im Detail funktioniert und was zu tun ist.
Ability – Die Arbeitsgrundlagen werden bereitgestellt; unter anderem für Tools, aber auch für externe Beratung, die den Stein ins Rollen bringt.
Reinforcement – Die neuen Abläufe werden laufend erprobt, wiederholt und verfeinert.
Ein strukturierter Prozess wie dieser wird dringend empfohlen. Denn sonst ist die Gefahr groß, dass die DevOps-Einführung nur an der Oberfläche stattfindet und das Team in alte Gewohnheiten zurückfällt. Eine regelmäßige Reflexion und Kontrolle helfen dabei, das bisher ungewohnte Vorgehen Schritt für Schritt anzunehmen.
Kompaktes Technologie-Wissen: Das AUSY TechSnack Meetup findet einmal pro Quartal statt
Am Ende des Vortrags hatten interessierte Teilnehmer noch die Gelegenheit, an unsere beiden Experten Fragen zu stellen. Wie auch zu Beginn, übernahm unsere Kollegin Jana die Moderation. Schließlich verabschiedeten unsere TechSnacker sich in den wohlverdienten Feierabend.
Unser nächstes TechSnack Meetup wird voraussichtlich Anfang September stattfinden. Ab sofort laden wir einmal pro Quartal mit spannenden Themen aus der Softwareentwicklung und IT-Beratung dazu ein. In der Sektion Veranstaltungen auf unserer Webseite sowie in unserer Gruppe bei meetup.com finden Sie rechtzeitig die aktuellen Informationen.
Wir freuen uns auf Ihre Teilnahme!
Der ganze Vortrag ist nun auch auf unserem YouTube-Kanal zu finden: