10 grobe DevOps-Schnitzer
Folgenschwere Fehler können die Delivery erheblich beeinträchtigen.
Foto: ungvar | shutterstock.com
Weil immer mehr Unternehmen danach streben, ihre Entwicklungsprozesse möglichst effizient zu gestalten, erfreut sich der DevOps-Ansatz wachsender Beliebtheit. Laut einer Prognose der Analysten von Research and Markets soll der globale DevOps-Markt bis zum Jahr 2030 rund 32 Milliarden Dollar schwer sein (2023: 10,6 Milliarden Dollar) – bei einer jährlichen Wachstumsrate von 14,9 Prozent.
Ohne Zweifel können ein DevOps-Ansatz und die zugehörigen Methoden dazu beitragen, Software schneller auf den Markt sowie IT- und Ops-Teams näher zusammenzubringen. Auf bestimmte, besonders gravierende Fehler, beziehungsweise “Zustände”, sollten Sie dabei allerdings tunlichst verzichten. Wenn Sie sich nicht selbst sabotieren wollen. Lesen Sie, welche.
1. Devs und Ops, die nicht kommunizieren
Obwohl das DevOps-Konzept vorsieht, eine bessere Zusammenarbeit und Kommunikation zwischen Entwicklungs- und Betriebs-Teams zu realisieren, stellt die Implementierung für einige Firmen eine große Hürde dar. Lawrence Guyot, President beim IT-Dienstleister ETTE, liefert Erklärungsansätze, woran das liegt: “In der Vergangenheit haben diese Einheiten in Silos gearbeitet. Das hat in der Regel zu vielen Ineffizienzen und Missverständnissen geführt.”
In seinem Unternehmen habe man deswegen einen funktionsübergreifenden Teamansatz eingeführt, der Mitglieder beider Teams in alle Phasen des Produktlebenszyklus einbeziehe – von der Planung bis hin zum Deployment. Mit dem Ergebnis zeigt sich Guyot zufrieden: “Das hat zu kohärenteren Workflows geführt und die Deployment-Zeit um 30 Prozent verkürzt.”
Auch Javier Muniz, CTO der Anwaltskanzlei LLCAttorney.com, betrachtet die effektive Kommunikation zwischen Devs und Ops als wesentliche Challenge – sieht diesbezüglich aber auch die Unternehmen in der Pflicht: “Viele Unternehmen unterschätzen, wie wertvoll Soft Skills in einer DevOps-Umgebung sind. Um die Kommunikation zwischen Devs und Ops in Gang zu bekommen, ist es unerlässlich, ein transparentes und kommunikationsförderliches Umfeld zu schaffen.”
2. Security, die zweitrangig ist
Eine andere DevOps-Herausforderung besteht darin, die Sicherheit der Softwarelieferkette zu gewährleisten. Auch zu diesem Aspekt hat ETTE-President Guyot sowohl eine Erklärung als auch einen möglichen Lösungsansatz beizutragen: “Die Geschwindigkeit, mit der DevOps-Teams arbeiten, kann dazu führen, dass wichtige Sicherheits-Checks unter den Tisch fallen. Bei ETTE haben wir dieses Problem gelöst, indem wir automatisierte Security-Tools direkt in unsere CI/CD-Pipeline integriert haben. Das gewährleistet in jeder Entwicklungsphase Security Assessments in Echtzeit.” Diese Integration habe den IT-Dienstleister nicht nur dabei unterstützt, Schwachstellen frühzeitig zu erkennen, sondern stelle laut Guyot auch sicher, dass die Security-Praktiken mit den beschleunigten Deployment-Zyklen Schritt hielten.
Besonders wichtig sind die Bereiche Datenschutz und Sicherheit in stark regulierten Branchen. Das weiß David Pumphrey, CEO des Healthcare-orientierten IT-Dienstleisters Riveraxe, aus eigener Erfahrung. Sein Unternehmen setzt deshalb ebenfalls auf eine tiefe Security-Integration in jeder Phase des DevOps-Prozesses sowie Security-Automation- und Compliance-Monitoring-Tools. “Indem wir die Sicherheit als integralen Bestandteil des Dev- und Ops-Prozesses betrachten, haben wir das Risiko von Datenschutzverletzungen erheblich minimiert”, so der Manager.
3. Komplexität, die nicht skaliert
IT-Infrastrukturen werden immer komplexer, insbesondere in großen Unternehmen: Die Kombination aus Hybrid- und Remote-Arbeit, der Ressourcenverlagerung in die Cloud und dem verstärkten Einsatz mobiler Geräte hat Folgen für DevOps-Teams, wie Guyot erklärt: “Die Komplexität moderner IT-Infrastrukturen managen zu müssen, kann für DevOps-Teams entmutigend sein.”
Guyots Unternehmen ETTE investierte aus diesem Grund in die Schulung seiner DevOps-Spezialisten – und legte dabei den Fokus auf fortschrittliche Cloud-Infrastrukturen und -Services. Auch das erwies sich als Erfolg, wie Guyot ausführt: “So konnten wir unseren Betrieb skalieren, ohne Kompromisse bei Performance oder Sicherheit einzugehen. Letztendlich hat sich unsere betriebliche Effizienz um 40 Prozent erhöht.”
4. Prioritäten, die an Geschäftszielen vorbeigehen
Jede Technologie-Initiative, die nicht mit den Unternehmenszielen in Einklang steht, führt zwangsläufig zu suboptimalen Ergebnissen. Diesbezüglich bildet DevOps keine Ausnahme. “DevOps und Geschäftsziele aufeinander abzustimmen, kann erhebliche Hürden aufwerfen”, konstatiert auch Remon Elsayea, President beim IT-Dienstleister TechTrone IT Services. Er fügt hinzu: “Es wirkt oft so, als ob das rasante Tempo von DevOps-Initiativen die Abstimmung mit weiter gefassten Geschäftszielen erschwert. Das kann zu falsch gesetzten Prioritäten führen.”
Er selbst setze deshalb darauf, regelmäßig funktionsübergreifende Teams zusammenzutrommeln, um die DevOps-Strategien im Kontext der aktuellen Geschäftsziele zu überprüfen und ein entsprechendes Alignment sicherzustellen, so Elsayea.
5. Neue Technologie, die stört
Sowohl Tech-Spezialisten als auch Business-Anwender sind oft gleichermaßen erpicht darauf, mit den neuesten technologischen Innovationen zu experimentieren. Eine neue, aufstrebende Technologie in den DevOps-Zyklus zu integrieren, bevor überhaupt klar ist, ob sie zu den bestehenden Produkten passt, ist allerdings nicht empfehlenswert. Elsayea erklärt warum – und wie es besser geht: “Jedes zusätzliche Element kann die Komplexität steigern und zusätzliche Lernkurven einführen. Wir setzen deshalb auf einen ‘Proof of Concept‘-Ansatz, bevor wir neue Tools vollständig in unseren Workflow einbinden.”
Das beinhaltet dem Manager zufolge auch kleinere Experimente, um den Impact und das Effizienzlevel neuer Technologien bewerten zu können: “So stellen wir sicher, dass sie unsere Prozesse bereichern, statt sie zu stören.”
6. Alte Technologie, die stört
Aber auch Unternehmen, die älteren IT-Systemen verhaftet sind, dürften in vielen Fällen Schwierigkeiten damit bekommen, eine DevOps-Strategie umzusetzen. Riveraxe-CEO Pumphrey erklärt: “Legacy-Systeme mit modernen DevOps-Methoden zu integrieren, ist eine bemerkenswerte Herausforderung. Hierbei entstehen in vielen Fällen Bottlenecks, weil es Altsystemen oft an der für eine nahtlose Pipeline nötigen Agilität mangelt.”
Um dieses Problem zu lösen, entschied man sich bei Pumphreys Arbeitgeber Riveraxe für ein schrittweises Vorgehen, bei dem die Legacy-Systeme in APIs “verpackt” wurden. “So konnten wir nicht nur wichtige Funktionen erhalten, sondern auch die Abläufe straffen und die Deployment-Zeit um etwa 20 Prozent verkürzen”, freut sich der CEO.
7. Kultur, die verhindert
DevOps heißt Change – und Veränderungen können sich schwierig gestalten. Der mögliche kulturelle Widerstand ist nicht zu unterschätzen – wie auch Pumphrey feststellen musste: “Eine Kultur zu verankern, die die DevOps-Philosophie vollständig miteinbezieht, war ein kontinuierlicher Prozess. Anfänglich hatten wir mit Widerstand gegen den schnellen Wandel und die damit verbundene Collaboration zu kämpfen.”
Entgegengewirkt habe man mit umfassenden Schulungsprogrammen und klar strukturierten Kommunikationskanälen, um allen Teammitgliedern die Vorteile des DevOps-Ansatzes zu demonstrieren. Dabei habe man Erfolge wie Misserfolge im Sinne einer kontinuierlichen Verbesserung genutzt, so der CEO: “Dieser Ansatz hat nicht nur die Teamdynamik verbessert, sondern auch zu innovativeren Lösungen und einer widerstandsfähigeren IT-Infrastruktur geführt.”
8. Remote-Arbeit, die spaltet
Seit der Pandemie ist es zum Unternehmensalltag geworden, dass Teile der Belegschaft zumindest zeitweise außerhalb des Büros arbeiten. Der Trend zu Remote- und Hybrid Work bleibt auch für die Entwicklungsabteilung nicht ohne Folgen. “Dezentrale DevOps-Teams zu managen, hat uns in Sachen Kommunikation, Kollaboration und Überblick vor spezielle Herausforderungen gestellt”, gibt Reade Taylor, Gründer des Managed Service Providers Cyber Command, ohne Umschweife zu. Seine Lösung: “Wir haben robuste Richtlinien für die Remote-Arbeit eingeführt, Tools und Plattformen eingesetzt, um die Zusammenarbeit zu fördern und eine Kultur des Vertrauens und der Autonomie gepflegt.”
Dabei sorgten laut Taylor regelmäßige virtuelle Check-Ins sowie eine klare Prozessdokumentation dafür, dass die Remote-Teams vernetzt, produktiv und auf die Unternehmensziele ausgerichtet blieben.
9. Devs und Ops, die unterschiedliche Ziele verfolgen
Wenn Dev- und Ops-Teams mit Blick auf die Entwicklungsziele konträre Auffassungen vertreten, kann das zu einer weiteren, gewichtigen DevOps-Hürde führen. LLCAttorney-CTO Muniz weist auf eine Ursache dieses Übels hin: “Entwicklungsteams streben nach schnellen Veränderungen, Betriebsteams nach Stabilität.”
Eine Lösung für dieses Problem sieht er in der Verankerung des Shared-Responsibility-Prinzips – Devs und Ops müssten von der Projektinitiierung bis zur endgültigen Implementierung zusammenarbeiten.
10. Automatisieren, weil das “gegen alles hilft”
Unternehmen aller Branchen und Größen versuchen, ihre IT- und Geschäftsprozesse zu automatisieren. Das realisiert zahlreiche Vorteile, wirft jedoch auch weitere, unerwartete DevOps-Herausforderungen auf.
“Nicht alle Prozesse sind dazu geeignet, automatisiert zu werden. Der Versuch, das zu erzwingen, kann zu Ineffizienz führen”, warnt Technologieentscheider Muniz und fügt hinzu: “Automatisierung ist kein Alles-oder-Nichts-Konzept. Zeit und Ressourcen spart man nur, wenn man die richtigen Prozesse dafür identifiziert.” (fm)
Dieser Beitrag basiert auf einem Artikel unserer US-Schwesterpublikation Infoworld.
Hier finden Sie den kompletten Artikel: