Vor nunmehr über einem Jahrzehnt hat „DevOps“ das Licht der Welt erblickt.

Die Umsetzung des DevOps Ansatz ermöglicht es Unternehmen, das Zusammenspiel von (Software-)Entwicklung und (IT-)Betrieb zu verbessern und so im Wettbewerb zu bestehen oder sogar einen Wettbewerbsvorteil zu erlangen.

Doch DevOps entwickelt sich weiter, um den sich ändernden Anforderungen gerecht zu werden. Neben den sich schnell entwickelnden Technologien spielt der Wandel von Unternehmen, auch getrieben durch die COVID-19 Pandemie, eine wesentliche Rolle. Es geht nicht mehr nur um „Dev“ und „Ops“, sondern um die Beseitigung von Beschränkungen zwischen dem Unternehmen und seinen Kunden.

Was kommt also als nächstes? Wie wird sich DevOps weiterentwickeln?

In den folgenden Wochen stellen wir an dieser Stelle DevOps-Trends vor, denen wir zunehmend häufig begegnen.

Microservices-Architekturen und Kubernetes in DevOps

Unternehmen werden ihre komplexen monolithischen Anwendungen in kleine Funktionsblöcke zerlegen. Diese sogenannten Microservices sind weitestgehend voneinander entkoppelt und erledigen jeweils nur eine Aufgabe. Sie werden dann innerhalb einer Container-Architektur komponiert (orchestrated) und betrieben.

Vorteile dieser Architektur liegen in ihrer Flexibilität und Skalierbarkeit. Microservices sind weniger komplex und haben klar definierte Schnittstellen. Sie können damit in der Regel durch kleine agile Teams unabhängig voneinander entwickelt, getestet, bereitgestellt (deployed) und gewartet werden.

Kubernetes ist eine Open-Source-Plattform für Container. Es hat sich als Plattform für Microservices-Architekturen bereits etabliert. Kubernetes und seine Tools unterstützen bei der Container-Orchestrierung. Die Plattform ist skalierbar, ausfallsicher und portabel. Container können über mehrere Instanzen auch Cloud-übergreifend verwaltet werden. Eine kontinuierliche Überwachung der Container erkennt Probleme. Erforderliche Neustarts oder Roll-Backs von Containern können automatisiert werden. Die Fähigkeit der Verknüpfung und Automatisierung von Entwicklungs- und Bereitstellungsprozessen, auch “Continuous Integration” (CI) und “Continuous Delivery/Deployment” (CD) genannt, ist eine Grundlage von DevOps.

Die Umsetzung einer Microservices-Architektur mit Kubernetes lässt Entwicklung und Betrieb enger zusammenarbeiten.