1. Auf Microservices setzen
Das Herzstück einer jeden SaaS-Cloud-Plattform ist die Komplexität. Komplexität kann auf zwei Arten verwaltet werden: Zentral oder verteilt. Ein zentralisiertes System ist ein Monolith, bei dem die gesamte Komplexität in einem einzigen System lebt, das eine einzige Schnittstelle zur Außenwelt darstellt. Ein verteiltes System wird oft mit Hilfe von Microservices aufgebaut, bei denen die Komplexität in einzelne Dienste aufgeteilt wird, die wiederum miteinander kommunizieren. Auf den ersten Blick scheint das auf Microservices basierende System brüchiger zu sein, da es mehr Schnittstellen und damit mehr Möglichkeiten für Fehler gibt. Das Gegenteil ist jedoch der Fall: Durch die Verwendung von Service Level Objectives (SLOs) für jeden Microservice und zusätzliche Alerts an relevante Teams wird eine „Tiefenverteidigung“ im System geschaffen. Einige Unternehmen setzen bereits SLOs ein, allerdings nur in den äußeren Schichten ihres Systems. Atlassian zum Beispiel setzt auf diese Tiefenverteidigung und nutzt über 1.400 Microservices. Eben diese Microservices mit angehängten SLOs, die mit Alerts verknüpft sind, sind der Schlüssel zu einem zuverlässigen Großsystem.
2. Automation überall nutzen, wo es möglich ist
Würden bereits fünf Prozent der Issue Services ihren Job nicht mehr machen, wäre alle Zuverlässigkeit dahin. Durch Automation an allen möglichen Stellen kann jedoch sichergestellt werden, dass die Zuverlässigkeit bei fast 100 Prozent liegt. Ein separates Tool überwacht alle vorhandenen Microservices, verknüpft Warnungen bei Anomalien einzelner SLOs und leitet sie an die entsprechenden Teams weiter, damit diese übernehmen können. Dieses Tool sollte weiterhin mit einem Incident Management System gekoppelt werden – so wird jeder Protokoll-Verstoß direkt gemeldet und kann umgehend behoben werden. Zudem lässt sich ein Microservice-System damit effektiv skalieren, was letztendlich auch weitere Engineering-Ressourcen für anspruchsvolle Arbeiten eröffnet.
3. Ein Fehlerbudget einführen
Damit die Zuverlässigkeit von Services einwandfrei bewertet werden kann, sollte zukünftig ein internes „Fehlerbudget“ eingeführt werden. Dieses Konzept wird von modernen Software-Unternehmen bereits seit zwei bis drei Jahren genutzt. Ein großer Vorteil von Fehlerbudgets ist, dass sie den Teams Spielraum geben. Solange der Dienst innerhalb seines Fehlerbudgets liegt, kann das Team wie gewohnt arbeiten. Erst wenn das Fehlerbudget überschritten wird, sollte das Team zu einer Notfalltaktik übergehen.
Als Beispiel: Das Berechtigungsteam bekommt die Aufgabe, dass der Service in 99,99 Prozent innerhalb einer Sekunde reagieren muss. Die Anzahl der Minuten, in denen diese Zahl nicht erreicht wird, ist dann das Fehlerbudget. Angenommen, aus der Berechnung ergibt sich, dass 52 Minuten des Jahres Fehlerbudget sind. Geht etwas schief und das Team braucht einmal zwei Minuten, um zu reagieren, ist das innerhalb des Budgets und erfordert keine weitere Aktion.
Zuvor wurden bei Atlassian alle Fehler gleichbehandelt, mit der Nutzung eines Fehlerbudgets und SLOs ist das anders – Fehler werden bewertet und sind jetzt skalierbar. Bei Atlassian erhalten alle Services diese Einordnung standardmäßig.
Fazit: Zuverlässigkeit ist der Grundstock für erfolgreiche Service-Bereitstellung
Ohne Kunde kein Service und ohne zuverlässigen Service kein Kunde. Doch um solche Dienste zu etablieren, kommen die meisten Unternehmen nicht um eine Überarbeitung ihrer internen Service-Struktur herum. Mit einer Umstellung auf Microservices, einer zentralen Plattform für deren Verwaltung sowie der Nutzung eines Fehlerbudgets legen sie damit den idealen Grundstein, um auch den Kunden fortlaufend zuverlässige und skalierbare Dienste anbieten zu können.
Atlassian ist ein weltweit führender Anbieter von Entwicklertools für agiles Projektmanagement. Im Zentrum der Anwendungen stehen Teams und deren Potential. Über 171.000 Unternehmen weltweit nutzen Atlassian-Tools, darunter General Motors, Walmart Labs, Bank of America Merill Lynch, Lyft, Verizon, Spotify und die NASA. Sie ermöglichen ihren Teams eine optimale Arbeitsweise durch die Software, die sie beim Projektmanagement, der Erstellung von Content, dem Service Management oder dem Teilen von Expertise unterstützt. Weitere Informationen zu Tools wie Jira, Confluence,Trello, Bitbucket, Opsgenie, Jira Service Desk und Jira Align unter https://atlassian.com.
Atlassian
Keizersgracht 311
NL1016EE Amsterdam
Telefon: +31 (20) 796-0060
Telefax: +31 (20) 524-8260
http://www.atlassian.com
Telefon: +49 (171) 4472457
E-Mail: AtlassianDE@hotwireglobal.com