Um mit den aktuellen Trends und Entwicklungen auf dem Markt der Telekommunikation mitzuhalten, ist es notwendig, die technischen Bereiche aus Engineering und Operations in den alltäglichen Prozessen näher zusammenzubringen. Dies bedeutet deutlich mehr als die Anpassung der Organisation oder die Einführung von neuen Tools und Technologien. Was genau hinter dem Ansatz DevOps steckt und wie wir bei der Etablierung in Ihrem Unternehmen unterstützen können, lesen Sie hier!
Smart City, Software-Defined Networking und Edge-Computing sind nur einige der Schlagworte, welche die steigende Komplexität in der Bereitstellung und im Betrieb von Telekommunikationsnetzen bei Carriern & Service-Providern beschreiben. Funktionen wandern zunehmend in die Cloud, Ressourcen in die Fläche und die Anforderungen an die Kompetenzen der Mitarbeiter verändern sich in rasender Geschwindigkeit. Aber wie soll man nun auf diese Entwicklungen reagieren?
DevOps: Development und Operations rücken zusammen
Den Begriff DevOps prägte Patrick Debois im Wesentlichen bereits 2009, der mit den „DevOpsDays“ eine Konferenz in Gent veranstaltete und dort mit Vorträgen zur Zusammenarbeit von Programmierern, IT-Spezialisten und Produktionsmitarbeitern referierte. In den folgenden Jahren entwickelte sich um den Begriff eine umfassende Bewegung rund um agile Methoden und eine Alternative zum bestehenden Wasserfall-Modell, in dem Änderungen und Entwicklungen im Wesentlichen in einer festen und abgeschlossenen Abfolge geplant und umgesetzt werden.
Abbildung 1 – DevOps-Grundsätze
Unter den DevOps-Kernpunkten Culture, Practice und Tools stehen neben den offensichtlichen Punkten, wie beispielsweise geeignete Werkzeuge und messbare KPIs, vor allem kulturelle Aspekte wie Zusammenarbeit, Vertrauen und ein stetiger Informationsfluss im Vordergrund. Spätestens an dieser Stelle wird klar, dass die Grundsätze deutlich von klassischen, häufig technischen Frameworks abweichen und einen anderen Ansatz bei der Umsetzung im Unternehmen erfordern.
DevOps für Carrier und Service-Provider? Ihr Weg in die Zukunft!
Der Betrieb von Telekommunikationsnetzen beschränkt sich schon seit vielen Jahren nicht mehr ausschließlich auf die Inbetriebnahme, Wartung und den Betrieb von hardwarebasierten, häufig monolithischen Netzwerkkomponenten. Technologien wie Software Defined Networks (SDN), virtuelle Netzwerkfunktionen (VNF) oder auch moderne Analysemethoden wie Telemetrie oder Netzwerkmonitoring auf Basis von Artificial-Intelligence und Machine-Learning erfordern zusätzliche Kompetenzen und veränderte Abläufe. Die Arbeit mit Software und Automatisierungsfunktionen rückt immer mehr in den Mittelpunkt und ermöglicht völlig neue Möglichkeiten im täglichen Betrieb komplexer Infrastrukturen.
Gerade im Kontext des Software Defined Networking (SDN) ist es notwendig, die IT einzubeziehen, da sich die Plattform der Umsetzung immer mehr in Richtung des Betriebs von virtuellen Systemen und Containern auf einer serverähnlichen Infrastruktur entwickelt. Die ganzheitliche Betrachtung dieser Prozesse ist eine große Chance für Carrier & Service-Provider, da die Fachkompetenzen in den meisten Fällen bereits gut ausgebildet sind.
Silodenken als Bremse für den technologischen Fortschritt
In theoretischen Abhandlungen zum Thema DevOps liest man immer wieder von der sogenannten „Wall of Confusion“. Diese Wand der Verwirrung soll im vereinfachten Sinne darstellen, welche Missverständnisse und Unterschiede in der Arbeitskultur und Denkweise der Bereiche Development und Operations vorherrschen. Im Mittelpunkt stehen hierbei die grundsätzlichen Schwerpunkte: Während das Engineering (Dev) innovationsgetrieben arbeitet und neue Funktionen und Produkte ins Netz bringt, liegt der Fokus im Bereich Operations (Ops) auf dem stabilen Betrieb des Netzes sowie der Einhaltung von Prozessen und Qualitätsanforderungen (SLAs).
Abbildung 2: Wall of Confusion zwischen Engineering und Operations
Schrittweise zum Ziel: Think big. Start small.
Das bestehende Silodenken und die Vorbehalte zwischen den Fachbereichen und sogar innerhalb eines Fachbereichs schrittweise aufzubrechen, ist ein komplexer, aber zielführender Prozess, der Feingefühl in der Umsetzung sowie auch maßgeblich in der Kommunikation mit den Mitarbeitern und Fachbereichen erfordert. Besonders im Bereich der Automatisierung – einem der wesentlichen Bestandteile der DevOps-Kultur – ist es notwendig, die Vorteile und Auswirkungen auf das Personal sensibel zu kommunizieren. Im Grundsatz sollen Ressourcen in den Fachbereichen erkannt werden, die aktuell für wiederkehrende Aufgaben mit geringer Schöpfungstiefe genutzt werden und stattdessen für anspruchsvolle und produktive Aufgaben genutzt werden. Dieser Grundsatz wird häufig mit „Automate the boring stuff“ beschrieben.
Abbildung 3 – Schrittweise zum DevOps Lifecycle
In der Praxis besonders geeignet für eine schrittweise Heranführung an die DevOps-Denkweise sind konkrete Projekte, welche in interdisziplinären Teams unter der Berücksichtigung der Grundsätze „Culture, Practice, Tools“ umgesetzt werden.
Divide and Conquer: Die Philosophie der kleinen Schritte
Tendenziell werden notwendige Änderungen in komplexen Netzwerken so gestaltet, dass der Service für den Endkunden möglichst selten und für einen kurzen Zeitraum gestört wird. Konkret werden die Maßnahmen in den meisten Fällen gesammelt, mit Rollout- und Rollback-Plänen versehen und dann in einer hohen Konzentration in einem festen Zeitfenster – in den meisten Fällen nachts – umgesetzt.
Im Rahmen der DevOps-Kultur ist die Philosophie der kleinen Schritte ein wesentlicher Bestandteil, welcher besagt, dass alle Aufgaben in möglichst kleine und damit besser handhabbare und nachvollziehbare Schritte aufgeteilt werden. Im konkreten Fall eines Changes bei einem Carrier & Service-Provider bedeutet dies, dass Änderungen im Netzwerk sukzessive in kleineren Wartungsfenstern ausgerollt werden, um Seiteneffekte, Beeinträchtigungen für den Kunden und auch die Komplexität in der Vor- und Nachbereitung zu minimieren. In den Bereichen Software-Entwicklung und Server-Betrieb werden diese Methoden in vielen Fällen bereits selbstverständlich unter den Schlagworten „Continuous Integration“ und „Continuous Deployment“ (CI/CD) gelebt.
Network-Automation als Grundstein für DevOps in der Praxis
Im Alltag der Carrier & Service-Provider ist vor allem die Automatisierung von täglichen Aufgaben ein wesentlicher Bestandteil. Eine Strategie der kleinen Schritte erlaubt die Nutzung von verschiedenen Automatisierungstools und Skriptsprachen wie z. B. Python oder Ansible. Dies vereinfacht und beschleunigt die Konfiguration von Netzelementen, die Verteilung von Konfigurationen sowie die Prüfung von Zuständen in Betrieb und Wartung. Wo zuvor mit CLI und SNMP gearbeitet wurde, können nun automatisierbare Schnittstellen wie NETCONF und YANG maßgeblich dabei unterstützten, die Kommunikation zwischen Menschen, Maschinen und Programmen erheblich zu vereinfachen.
Wesentlich für Erfolg, Akzeptanz und Qualität der oben genannten Maßnahmen der Automatisierung ist die Nutzung einer übergreifenden Automatisierungsplattform zur Steuerung und Auswertung der automatisierten Prozesse. In der Praxis hat sich Rundeck bei uns und unseren Kunden als leistungsfähige Plattform bewährt.
Abbildung 4 – Rundeck als Automatisierungsplattform
In unserem ITC (Innovation & Testing Center) bauten wir eine vollständige und automatisierte Test-Infrastruktur, die Testabläufe unserer Kunden effizient automatisiert und damit eine schnelle, flexible und effiziente Durchführung von Tests und PoCs ermöglicht und sogar die Anpassung der logischen Topologie in kürzester Zeit ohne vor-Ort-Präsenz eines Technikers bereitstellt.
#SIMPLIFYINGCOMPLEXITY: Wir unterstützen Sie auf dem Weg zur DevOps-Kultur!
Gerne bringen wir unsere umfassende Erfahrung aus unseren bisherigen Projekten auch bei Ihnen ein und unterstützen Sie mit organisatorischen und technischen Maßnahmen bei der Planung, Umsetzung und Optimierung. Besonders im Bereich der Automatisierung greifen wir auf einen großen Erfahrungsschatz zurück, den wir Ihnen gerne im persönlichen Gespräch oder einem Workshop unter Beweis stellen.