IBM Well-Architected-Framework
Die Säule „Effizienter Betrieb“ konzentriert sich auf Lösungen, die die Anforderungen an Erkenntnisse in der Cloud-Workload, digitalisierte Prozesse und die Aufrechterhaltung einer proaktiven Betriebshaltung erfüllen. Dies wird durch Praktiken und Anleitungen für das Bereitstellen von Teams, Automatisierung und KI-Tools zur Überwachung, Verwaltung und Pflege von Lösungen auf eine sichere, zuverlässige und leistungsstarke Weise ermöglicht.
Beispiele für Betriebsmodelle sind „You build it you run it“ oder die Einführung einer Site Reliability Engineering Vorgehensweise. Diese und andere Betriebsmodelle hängen davon ab, die Bedürfnisse und den Kontext des Unternehmens, der Kunden, der Administratoren und der Entwicklungsteams zu verstehen.
Es ist wichtig zu verstehen, dass Betriebsmodelle kontinuierlich bewertet, angepasst und auf die Bedürfnisse eines Unternehmens zugeschnitten werden sollten, wobei Faktoren wie Branchen, regulatorische Anforderungen, bestehende Lösungen und Benutzerziele berücksichtigt werden.
Die Automatisierung gängiger und routinemäßiger Betriebsabläufe mithilfe von Skripten, intelligenten Agenten und anderen Tools trägt zur Aufrechterhaltung eines hohen Serviceniveaus bei.
Dieses Prinzip sollte über Teams und Abhängigkeiten hinweg skaliert werden, um durchgehende Effizienz/Geschwindigkeit, Genauigkeit, Fehlerreduzierung, Agilität und Konstanz innerhalb der Betriebsumgebung zu gewährleisten.
Heutzutage haben Betriebsteams unzählige operative Tools zur Auswahl, darunter viele erstklassige Tools für bestimmte betriebliche Aspekte, die zu einer unkontrollierten Ausbreitung führen können, wenn sie nicht verwaltet werden.
Variationen und die Integration verschiedener Tools können zu Herausforderungen bei der Einarbeitung von Teammitgliedern, Lizenzierung und Kostenkontrolle, Agilität und erhöhten Sicherheitslücken führen. Betriebsteams sollten kontinuierlich versuchen, die eingesetzten operativen Tools und Konsolen zu minimieren und zu konsolidieren.
Nicht jede Lösung erfordert eine Verfügbarkeit rund um die Uhr oder sofortige Reaktionszeit. Effiziente Lösungen müssen mehrere Serviceebenen innerhalb einer einzigen Lösung unterstützen und Workloads auf der Infrastruktur platzieren, die die Betriebsanforderungen der Workload am besten erfüllt.
Die Serviceniveaus geben den Entwicklungsteams auch Aufschluss darüber, welche Konfigurationen und Instrumente auf Anwendungsebene erforderlich sind, um die Unternehmensziele zu unterstützen und eine positive Benutzererfahrung zu gewährleisten.
Effiziente Betriebsteams sind multidisziplinär, sie verfügen also über alle erforderlichen Fähigkeiten zur Unterstützung verschiedener Anwendungen. Um diese Fähigkeiten zu erlangen, muss der gesamte Workload-Stack mit Anwendungen und Infrastrukturservices berücksichtigt werden.
Lösungen und Betriebstools müssen dieses Modell unterstützen, indem sie sowohl die Integration (über Lösungskomponenten hinweg) als auch die Trennung (von anderen Lösungen) von Betriebstools und Informationen ermöglichen.
Es gibt viele betriebliche Vorgehensweisen, die sowohl automatisiert als auch hinter einer API für besseren Zugriff genutzt werden können, zum Beispiel nicht nur durch Automatisierung zur Verwaltung von Codes, sondern auch durch die Erstellung einer langjährigen API zur Verwaltung von Codes.
Dieser Ansatz ist skalierbar und eignet sich für die Einführung neuer Funktionen sowie deren Integration in dynamische Workflows. Dies kann sowohl die Verfahren standardisieren als auch die Wartezeiten zwischen den Teams verringern.
Vorgehensweisen und Anleitungen für die Entwicklung effizienter Betriebslösungen. Diese Anleitung informiert Teams darüber, wie sie Prinzipien für einen effizienten Betrieb umsetzen und die Zuverlässigkeit, Verfügbarkeit und Leistung komplexer Systeme sicherstellen. Die Vorgehensweisen helfen Unternehmen dabei, ihre benutzerzentrierten Zuverlässigkeitsziele zu erreichen und die Funktionsfähigkeit ihrer Dienste aufrechtzuerhalten.
Effiziente Betriebsverfahren sind individualisierbar und können an die spezifischen Bedürfnisse und den Kontext der Verbraucher, Systeme und Dienste eines Unternehmens angepasst werden.
Unternehmensspezifische Anforderungen, Workloads und Architekturen bestimmen die einzuführenden Best Practices. Eine kontinuierliche Verbesserung durch Feedback, Bewertung und Ausrichtung auf die Strategie des Unternehmens für die Cloud sind für eine kontinuierliche Effizienz und Effektivität unerlässlich.
Das gewünschte Ergebnis ist eine Kultur der Zuverlässigkeit und Zusammenarbeit, die die Erfahrung verbessert, den Geschäftswert steigert und Störungen minimiert.
Jede Cloud-Anwendung mit einem eigenen Verwaltungs- oder SRE-Team neigt dazu, eine Überwachungslösung einzuführen oder zu entwickeln. Um die Anzahl der Steuerungsebenen zu minimieren, sollten Betriebsteams bevorzugt mit einem zentralisierten Tools-Team zusammenarbeiten, um eine zentralisierte Überwachungslösung einzuführen.
Die Konsolidierung von System-, Ereignis- und Anwendungsprotokollen an einem zentralen Ort vereinfacht die betriebliche Überwachung und Problemdiagnose erheblich, indem die Anzahl der Protokollquellen und Standorte, die von Betriebsmitarbeitern überwacht und verwaltet werden müssen, minimiert wird. So können Teams umfassende Überwachungssysteme einrichten, um kontinuierlich Metriken und Protokolle von verschiedenen Komponenten des Systems zu erfassen und zu analysieren. Diese Systeme lösen Warnungen aus, wenn SLIs von akzeptablen Bereichen abweichen, so dass Techniker oder automatisierte Prozesse schnell auf die entsprechenden Signale reagieren können.
Das alte „Break-Fix“-Modell funktioniert einfach nicht in modernen IT-Umgebungen mit höheren Kundenanforderungen, weitläufigen Multi-Cloud-Lösungen und weniger qualifizierten Mitarbeitern, die all das verwalten müssen. Durch künstliche Intelligenz unterstützte Abläufe (AIOps) helfen Betriebsteams dabei, die Verfügbarkeit, Leistung und Sicherheit ihrer Umgebungen aufrechtzuerhalten und potenzielle sowie anhaltende Probleme in ihrer Umgebung schnell zu identifizieren und zu lösen.
Die Einführung von AIOps wird durch die folgenden Maßnahmen ermöglicht:
Infrastrukturspezifikationen und -konfigurationen werden wie Code verwaltet. Durch den Einsatz automatisierter Bereitstellungstools wird also das Konfigurationsmanagement ermöglicht und die Konstanz der Infrastruktur über verschiedene Bereitstellungen hinweg sichergestellt.
Eine konstante Infrastrukturkonfiguration im Code sorgt für reproduzierbare Umgebungen über den gesamten SLDC-Lebenszyklus und die Bereitstellung in verschiedenen Umgebungen.
Dieser Ansatz ermöglicht wesentliche Vorteile, darunter:
Produktteams arbeiten mit Stakeholdern zusammen, um Service Level Objectives (SLOs) zu definieren und Service Level Indicators (SLIs) festzulegen, die die Resilienz und die Bereitstellung eines Dienstes messen. SLIs können in einer direkten Beziehung zu SLOs stehen, indem sie messbare Metriken wie Latenz, Fehlerraten und Betriebszeit nutzen, die zum Erreichen der festgelegten Ziele beitragen.
Die Einrichtung von SLOs und SLIs hat folgende wichtige Vorteile:
Entwickeln Sie konsequent Verfahren, die Rollen, Verantwortlichkeiten, Kommunikationswege und Eskalationspfade während wichtiger Prozesse wie Vorfall-, Änderungs- und Problemmanagement festlegen. Diese Verfahren gewährleisten eine funktionale, sichere, skalierbare und kosteneffiziente Nutzung von Cloud-Ressourcen.
Zu den gängigen Verfahren für Cloud Operations gehören:
Die Implementierung und Verwaltung klar definierter Verfahren umfasst Prozesssimulationen, um Szenarien nachzustellen und sicherzustellen, dass die Teams gut vorbereitet sind, um die Aufgaben in allen Bereichen mit Qualität und Effizienz zu erfüllen.
Nach einem unerwarteten Vorfall führen die Teams Nachbesprechungen und eine unvoreingenommene Untersuchung durch, um die beitragenden Faktoren, die Ursache(n) und die Effizienz der Reaktion zu ermitteln. Darauf folgt eine digitalisierte und/oder automatisierte Lösung, um ähnliche Vorfälle in Zukunft zu verhindern.
Diese Vorgehensweise umfasst regelmäßige Überprüfungen und Optimierungen basierend auf datengestützten Erkenntnissen, nachträglichen Untersuchungen und dem Feedback von Stakeholdern. Darüber hinaus ist die Integration mit bestehenden automatisierten Lösungen bei der Einführung und Einbindung von Diensten in Umgebungen von entscheidender Bedeutung, um eine proaktive Haltung zu wahren.
Dadurch wird sichergestellt, dass Prozesse nicht statisch bleiben, sondern sich weiterentwickeln, um dynamischen Geschäftszielen, Anforderungen und Herausforderungen gerecht zu werden.
Arbeiten Sie mit Sicherheitsteams zusammen, um zu gewährleisten, dass Sicherheitsmaßnahmen in Entwicklungs-, Bereitstellungs- und Wartungsprozesse integriert werden.
Dazu gehört auch der „Shift Left“-Ansatz bei Sicherheits- und Softwareentwicklungslebenszyklen (SDLC), wobei der Schwerpunkt auf der Umsetzung von Richtlinien durch verschlüsselte und automatisierte Lösungen liegt.
Die konstante Zusammenarbeit mit der Sicherheit stellt sicher, dass bereitgestellte Workloads an dynamische Unternehmensrichtlinien und Geschäftsziele angepasst bleiben. Weitere Prozesse umfassen die Durchführung regelmäßiger Sicherheitsbewertungen, die Integration des Schwachstellenmanagements und eine regelmäßige Compliance-Prüfung.