OPS04-BP04 Implementieren einer Abhängigkeitstelemetrie
Die Abhängigkeitstelemetrie ist für die Überwachung des Status und der Leistung der externen Services und Komponenten, auf die Ihr Workload angewiesen ist, unerlässlich. Sie liefert wertvolle Erkenntnisse zu Erreichbarkeit, Timeouts und anderen kritischen Ereignissen im Zusammenhang mit Abhängigkeiten wie DNS, Datenbanken oder APIs von Drittanbietern. Indem Sie Ihre Anwendung so instrumentieren, dass sie Metriken, Protokolle und Traces zu diesen Abhängigkeiten ausgibt, gewinnen Sie ein besseres Verständnis potenzieller Engpässe, Leistungsprobleme oder Ausfälle, die sich auf Ihren Workload auswirken könnten.
Gewünschtes Ergebnis: Die Abhängigkeiten, auf die Ihr Workload angewiesen ist, funktionieren erwartungsgemäß, sodass Sie Probleme proaktiv angehen und eine optimale Workload-Leistung gewährleisten können.
Typische Anti-Muster:
-
Nichtbeachtung externer Abhängigkeiten: sich nur auf interne Anwendungsmetriken konzentrieren und dabei Metriken im Zusammenhang mit externen Abhängigkeiten außer Acht lassen.
-
Mangelnde proaktive Überwachung: warten, bis Probleme auftreten, statt den Status und die Leistung von Abhängigkeiten kontinuierlich zu überwachen.
-
Isolierte Überwachung: Einsatz mehrerer, unterschiedlicher Überwachungstools, was zu fragmentierten und inkonsistenten Ansichten bezüglich des Überwachungsstatus führen kann.
Vorteile der Nutzung dieser bewährten Methode:
-
Verbesserte Zuverlässigkeit der Workloads: sicherstellen, dass externe Abhängigkeiten kontinuierlich verfügbar sind und optimal funktionieren.
-
Schnellere Problemerkennung und -lösung: proaktives Identifizieren und Beheben von Problemen mit Abhängigkeiten, bevor sie sich auf den Workload auswirken.
-
Umfassender Überblick: Erhalt eines ganzheitlichen Überblicks über interne und externe Komponenten, die den Workload-Status beeinflussen.
-
Verbesserte Skalierbarkeit der Workloads: Verständnis der Skalierbarkeitsgrenzen und Leistungsmerkmale externer Abhängigkeiten.
Risikostufe bei fehlender Befolgung dieser bewährten Methode: Hoch
Implementierungsleitfaden
Implementieren Sie die Abhängigkeitstelemetrie, indem Sie zunächst die Services, Infrastrukturen und Prozesse identifizieren, von denen Ihr Workload abhängt. Quantifizieren Sie, wie gute Bedingungen aussehen, wenn diese Abhängigkeiten wie erwartet funktionieren, und bestimmen Sie dann, welche Daten zum Messen dieser Bedingungen benötigt werden. Mit diesen Informationen können Sie Dashboards und Benachrichtigungen erstellen, die Ihren Operations-Teams Erkenntnisse zum Status dieser Abhängigkeiten liefern. Verwenden Sie AWS-Tools, um die Auswirkungen zu ermitteln und zu quantifizieren, wenn Abhängigkeiten nicht die gewünschten Resultate zeigen. Überarbeiten Sie Ihre Strategie kontinuierlich, um Änderungen der Prioritäten, Ziele und gewonnenen Erkenntnisse Rechnung zu tragen.
Implementierungsschritte
So implementieren Sie die Abhängigkeitstelemetrie auf effiziente Weise:
-
Externe Abhängigkeiten identifizieren: Arbeiten Sie mit Stakeholdern zusammen, um die externen Abhängigkeiten zu ermitteln, von denen Ihr Workload abhängt. Zu externen Abhängigkeiten zählen Services wie externe Datenbanken, APIs von Drittanbietern, Netzwerkverbindungsrouten zu anderen Umgebungen und DNS-Services. Der erste Schritt zu einer effektiven Abhängigkeitstelemetrie besteht darin, auf ganzer Ebene zu verstehen, welche diese Abhängigkeiten sind.
-
Eine Überwachungsstrategie entwickeln: Sobald Sie sich ein klares Bild von Ihren externen Abhängigkeiten verschafft haben, entwerfen Sie eine darauf zugeschnittene Überwachungsstrategie. Dazu müssen Sie die Wichtigkeit jeder Abhängigkeit, ihr erwartetes Verhalten und alle damit verbundenen Service Level Agreements oder -Ziele verstehen. Richten Sie proaktive Benachrichtigungen ein, die Sie über Statusänderungen oder Leistungsabweichungen informieren.
-
Den Amazon CloudWatch Internet Monitor nutzen: Er liefert Erkenntnisse zum globalen Internet und hilft Ihnen, Ausfälle oder Störungen zu verstehen, die sich auf Ihre externen Abhängigkeiten auswirken könnten.
-
Informiert bleiben mit dem AWS Health Dashboard
: Dieses Dashboard stellt Alarme bereit und empfiehlt Abhilfemaßnahmen, wenn in AWS Ereignisse eintreten, die möglicherweise Ihre Services betreffen. -
Ihre Anwendung instrumentieren mit AWS X-Ray
: AWS X-Ray bietet Ihnen Erkenntnisse zur Leistung von Anwendungen und ihren zugrunde liegenden Abhängigkeiten. Verfolgen Sie Anfragen von Anfang bis Ende nach, um Engpässe oder Ausfälle bei den externen Services oder Komponenten zu identifizieren, auf die sich Ihre Anwendung stützt. -
Den Amazon DevOps Guru einsetzen
: Dieser Machine Learning-gestützte Service identifiziert operative Probleme, prognostiziert das Auftreten kritischer Probleme und empfiehlt spezifische Maßnahmen. So ist er von unschätzbarem Wert, wenn es darum geht, Erkenntnisse zu Abhängigkeiten zu gewinnen und festzustellen, dass sie nicht die Ursache von operativen Problemen sind. -
Regelmäßig überwachen: Überwachen Sie kontinuierlich alle Metriken und Protokolle, die sich auf externe Abhängigkeiten beziehen. Richten Sie Warnmeldungen ein, die Sie über unerwartetes Verhalten oder Leistungseinbußen informieren.
-
Nach Änderungen validieren: Überprüfen Sie nach jeder Aktualisierung oder Änderung einer externen Abhängigkeit deren Leistung und Ausrichtung auf die Anforderungen Ihrer Anwendung.
Aufwand für den Implementierungsplan: Mittel
Ressourcen
Zugehörige bewährte Methoden:
Zugehörige Dokumente:
Zugehörige Videos:
Zugehörige Beispiele: