Teil 1: SRE

DevOps-Trends: Site Reliability Engineering als Bereicherung der DevOps-Philosophie

Harbinder Kang

© Shutterstock / Tashatuvango

Die Vorhersage und Identifizierung von Fehlerursachen in IT-Infrastrukturen ist eine komplexe Angelegenheit. IT-Teams, die für die Bereitstellung von Systemen und Anwendungen verantwortlich sind, haben damit alle Hände voll zu tun. Nun kommt Verstärkung aus der DevOps-Welt: Zahlreiche Disziplinen, die sich im Umfeld der neuen IT-Management-Methode bewegen, sorgen für mehr Durchblick in der Entwicklung und Bereitstellung von Anwendungen. Einer dieser neuen Ansätze ist Site Reliability Engineering – SRE bezieht grundlegende Aspekte aus dem Software-Engineering mit ein und wendet sie auf Infrastruktur- und Betriebsprobleme an. Harbinder Kang, Global Head of Developer Operations bei Finastra, erklärt, wie SRE die DevOps-Philosophie bereichert.

Für immer mehr Unternehmen ist die Cloud die beste Option, ihre Dienstleistungen und Produkte weltweit zuverlässig anbieten zu können – mit dieser Entwicklung verstärkt sich zugleich der Fokus auf die passenden Werkzeuge, Technologien und Methoden, um die Bereitstellung digitaler Ökosysteme so effizient wie möglich zu gestalten. Die große Herausforderung an moderne IT-Infrastrukturen besteht darin, zum einen maximal skalierbar zu sein, zum anderen eine gleichbleibende Servicequalität zu liefern. Diese in vielerlei Hinsicht anspruchsvolle Aufgabe kann nur erfüllt werden, wenn Systeme, auf denen spezifische Anwendungen und Prozesse laufen, durchgängig beobachtet werden. Fehler und Ausfälle können durch die intelligente und praoktive Auswertung von Ereignissen und Warnmeldungen deutlich reduziert werden. Zusätzlich kann der Schweregrad von Zwischenfällen verringert werden. Genau an dieser Stelle kommt Site Reliability Engineering ins Spiel.

Fehler über alle Netzwerke hinweg erkennen

Sobald die Kapazitäten von Bereitstellungsinfrastrukturen hochgefahren werden, müssen Provider die Verfügbarkeit ihrer Systeme im Auge behalten. Schließlich ist die Zuverlässigkeit einer Bereitstellungsumgebung das A und O für jedes Unternehmen. Das Hochskalieren eines Systems bringt allerdings zugleich eine erhöhte Komplexität mit sich. Mit dieser Vielschichtigkeit wiederum steigen die Fehleranfälligkeit und die Gefahr, dass der laufende Betrieb durch Störungen unterbrochen werden kann. Während ein einzelner Alarm noch kein Hinweis auf ein schwerwiegendes Problem ist, können zahlreiche Fehlermeldungen über ebenso zahlreiche Systeme und Netzwerke hinweg durchaus auf eine kritische Sollbruchstelle hinweisen. Der Kern von Site Reliability Engineering besteht darin, das Prinzip eines systemweiten Fehler-Monitorings in die Tat umzusetzen und stets unmittelbar und angemessen die passenden Maßnahmen zur Eindämmung von Störungen ableiten zu können. Am besten proaktiv bereits im Development.

Verantwortung liegt in SRE-Händen

SRE-Experten sind sich darüber im Klaren, wie schnell Fehler entstehen können. Sie unterscheiden sich von klassischen IT-Ingenieuren in einem wesentlichen Punkt: Ihre Denke kommt aus der Software-Entwicklung. Deshalb sind sie in der Lage, inkrementelle Veränderungen mit hoher Geschwindigkeit und über verschiedene Systemlandschaften hinweg zu implementieren. Damit können sie Fehler systematisch und idealer Weise proaktiv aus einer Infrastruktur herausarbeiten – es geht also um deutlich mehr als nur darum, das Fehlerrisiko zu minimieren, indem Veränderungen während des laufenden Betriebs so gering wie möglich gehalten werden. Es geht unter anderem darum, mögliche Probleme schon während der Entwicklung zu berücksichtigen. Diese neue Perspektive auf potenzielle Störquellen innerhalb einer Infrastruktur setzt sich langsam aber sicher durch. Immer mehr Entwicklungsteams begrüßen Site Reliability-Ingenieure in ihren Reihen und übergeben die Verantwortung für den zuverlässigen Betrieb einzelner Services in ihre Hand. An dieser Stelle zeigen sich ganz deutlich die Vorteile der engen Verzahnung von Entwicklung und Betrieb, die aus der DevOps-Philosophie erwachsen.

IT Security Camp
IT Security Camp

Interview mit Christian Schneider zum Thema „DevSecOps“.

DevSecOps ist, bezogen auf Security-Checks, die logische Fortführung der Automatisierung im DevOps-Sinne

Automatisierung entlastet DevOps-Teams

Die Prinzipien des SRE stammen überwiegend aus Branchen, in denen der Zuverlässigkeit von Systemen eine enorm geschäftskritische Bedeutung zukommt. Ein Beispiel ist die Luftfahrt, in der Sicherheit oberste Maxime ist. Luft- und Raumfahrtingenieure nutzen die Informationen aus Flugdatenschreibern, um Optimierungen gezielt voranzutreiben. Site Reliability-Ingenieure arbeiten ganz ähnlich: Sie betrachten historische Daten und werten aus, was vor, während und nach kritischen Zwischenfällen innerhalb einer Bereitstellungsinfrastruktur passiert ist.

Es liegt im Verantwortungsbereich von SRE, aus der Analyse von Stör- und Fehlerdaten konkrete Maßnahmen abzuleiten. Eine Aufgabe, die mit steigenden Datendurchsätzen, jedem neuen Service und jedem zusätzlichen Client anspruchsvoller wird. Je nachdem, wie gut der Informationsfluss ist und wie viele unterschiedliche Teams und Mitarbeiter in diesen Prozess eingebunden sind, kann die manuelle Fehlersuche und -behebung sehr viel wertvolle Zeit in Anspruch nehmen. Ein Kostenfaktor, den Infrastruktur-Provider nicht in Kauf nehmen wollen und Kunden nicht dulden. Die Lösung liegt im Einsatz intelligenter, lernfähiger Tools: Sie ermöglichen die Automatisierung von SRE-Prozessen und helfen dabei, Fehleranalysen auch in hochskalierten, extrem komplexen Umgebungen zuverlässig und vor allem schnell durchführen zu können. Die Reaktion auf Störungen kann automatisch erfolgen und – mit zunehmender Reife der Analysealgorithmen – auch die vollständige Behebung von Zwischenfällen. Durch den Einsatz von lernfähigen, automatisierten Tools können Infrastrukturen ohne Weiteres hochskaliert werden, ohne dass zugleich die personellen Ressourcen erhöht werden müssen.

Agiles Grundprinzip: aus Fehlern lernen

SRE ist noch eine recht junge Disziplin im DevOps-Umfeld. Unternehmen sollten deshalb nicht vergessen, dass es keinen universellen Ansatz gibt, der auf jedwede Infrastruktur umgelegt werden kann. Es ist klar, dass unterschiedliche Unternehmen unterschiedliche Anforderungen mitbringen und die Implementierung von SRE-Tools und -prozessen entsprechend angepasst werden muss. Was für einen großen Konzern, der schon lange in der Cloud unterwegs ist, gut funktioniert, muss noch lange nicht für jedes Unternehmen die richtige Herangehensweise sein. Sicher ist allerdings, das Site Reliability Engineering als geschäftskritische Domäne künftig massiv an Bedeutung gewinnen wird. Schließlich beweist sich mit diesem Ansatz wieder einmal der bewährte Gedanke, dass wir aus Fehlern am besten lernen können. Ein Grundprinzip, das mit der agilen Denke aus Scrum & Co. und dank der Entwicklerperspektive der Site Reliability-Ingenieure nun auch die Bereitstellung und den Betrieb von IT-Systemen bereichert.

Verwandte Themen:

Geschrieben von
Harbinder Kang
Harbinder Kang
Als Chefentwickler von Finastra hegt Habinder Kang eine Leidenschaft für Innovationen und Hightech. Die fortlaufende Weiterentwicklung der Finastra-Produkte und die kontinuierliche Optimierung der Software-Bereitstellungszyklen haben für Harbinder Kang oberste Priorität. Er hat vielfältige Erfahrungen im Management von weltweit verteilten agilen Teams, welche Finanzsoftware nach dem Prinzip der DevOps-Philosophie entwickeln.
Kommentare

Hinterlasse einen Kommentar

avatar
4000
  Subscribe  
Benachrichtige mich zu: