OPS04-BP04 Implementieren einer Abhängigkeitstelemetrie - AWS Well-Architected Framework

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 Ihre 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. Wenn Sie Ihre Anwendung so instrumentieren, dass sie Metriken, Protokolle und Traces zu diesen Abhängigkeiten ausgibt, gewinnen Sie ein besseres Verständnis von potenziellen Engpässen, Leistungsproblemen oder Ausfällen, die sich auf Ihren Workload auswirken könnten.

Gewünschtes Ergebnis: Sicherstellen, dass die Abhängigkeiten, auf die Ihre Workload angewiesen ist, erwartungsgemäß funktionieren, 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 die 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, wenn diese bewährte Methode nicht eingeführt wird: Hoch

Implementierungsleitfaden

Implementieren Sie die Abhängigkeitstelemetrie, indem Sie zunächst die Services, Infrastrukturen und Prozesse identifizieren, von denen Ihre 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 Warnmeldungen 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:

  1. Identifizierung externer Abhängigkeiten: 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.

  2. Erstellung einer Überwachungsstrategie: 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 Warnmeldungen ein, die Sie über Statusänderungen oder Leistungsabweichungen informieren.

  3. Verwendung der Netzwerküberwachung: Verwenden Sie die Tools Internet Monitor und Network Monitor, die umfassende Einblicke in die globalen Internet- und Netzwerkbedingungen bieten. Diese Tools helfen Ihnen dabei, Ausfälle, Unterbrechungen oder Leistungseinbußen, die sich auf Ihre externen Abhängigkeiten auswirken, zu verstehen und darauf zu reagieren.

  4. Informiert bleiben mit dem AWS Health Dashboard: Dieses Dashboard stellt Warnmeldungen bereit und empfiehlt Abhilfemaßnahmen, wenn in AWS Ereignisse eintreten, die sich auf Ihre Services auswirken könnten.

    1. Überwachen Sie AWS Health-Ereignisse mit Amazon EventBridge-Regeln oder integrieren Sie sie programmatisch mit der AWS Health API, um Aktionen zu automatisieren, wenn Sie AWS Health-Ereignisse empfangen. Dies können allgemeine Aktionen sein, z. B. das Senden aller geplanten Lebenszyklus-Ereignisnachrichten an eine Chat-Oberfläche, oder spezifische Aktionen, wie das Initiieren eines Workflows in einem IT-Servicemanagement-Tool.

    2. Falls Sie AWS Organizations verwenden, können Sie AWS Health-Ereignisse kontenübergreifend zusammenfassen.

  5. Instrumentierung Ihrer Anwendung 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.

  6. Verwendung von Amazon DevOps Guru: Dieser Machine Learning-gestützte Service identifiziert operative Probleme, prognostiziert das Auftreten kritischer Probleme und empfiehlt spezifische Maßnahmen. Dadurch 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.

  7. Regelmäßige Überwachung: Ü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.

  8. Validierung nach Änderungen: Ü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: