Zentralisieren Sie die Überwachung mithilfe von Amazon CloudWatch Observability Access Manager - AWS Prescriptive Guidance

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Zentralisieren Sie die Überwachung mithilfe von Amazon CloudWatch Observability Access Manager

Erstellt von Anand Krishna Varanasi (AWS), Jimmy Morgan (), Ashish Kumar (AWS), Balaji Vedagiri (), (AWS), Sarat Chandra Pothula () und Vivek AWS Thangamuthu () JAGDISH KOMAKULA AWS AWS AWS

cloudwatch-obervability-access-managerCode-Repository: -terraform

Umgebung: Produktion

Technologien: Infrastruktur; Management und Unternehmensführung; Strategie für mehrere Konten

AWSDienste: Amazon CloudWatch; Amazon CloudWatch Logs

Übersicht

Beobachtbarkeit ist entscheidend für die Überwachung, das Verständnis und die Problembehebung von Anwendungen. Anwendungen, die sich über mehrere Konten erstrecken, wie bei Implementierungen AWS Control Tower oder landing zone Zone-Implementierungen, generieren eine große Anzahl von Protokollen und Trace-Daten. Um Probleme schnell zu beheben oder Benutzeranalysen oder Geschäftsanalysen zu verstehen, benötigen Sie eine gemeinsame Observability-Plattform für alle Konten. Mit dem Amazon CloudWatch Observability Access Manager können Sie von einem zentralen Ort aus auf mehrere Kontoprotokolle zugreifen und diese kontrollieren.

Sie können den Observability Access Manager verwenden, um Observability-Datenprotokolle anzuzeigen und zu verwalten, die von Quellkonten generiert wurden. Quellkonten sind Einzelpersonen AWS-Konten , die Observability-Daten für ihre Ressourcen generieren. Observabilitätsdaten werden zwischen Quellkonten und Monitoring-Konten gemeinsam genutzt. Die gemeinsam genutzten Observability-Daten können Metriken in Amazon CloudWatch, Logs in Amazon CloudWatch Logs und Traces in AWS X-Ray beinhalten. Weitere Informationen finden Sie in der Dokumentation zu Observability Access Manager.

Dieses Muster ist für Benutzer gedacht, die über Anwendungen oder Infrastrukturen verfügen, die in mehreren ausgeführt werden AWS-Konten und die einen gemeinsamen Ort zum Einsehen von Protokollen benötigen. Es erklärt, wie Sie Observability Access Manager mithilfe von Terraform einrichten können, um den Status und den Zustand dieser Anwendungen oder Infrastrukturen zu überwachen. Sie können diese Lösung auf verschiedene Arten installieren:

  • Als eigenständiges Terraform-Modul, das Sie manuell einrichten

  • Durch die Verwendung einer Pipeline für kontinuierliche Integration und kontinuierliche Lieferung (CI/CD)

  • Durch die Integration mit anderen Lösungen wie AWS Control Tower Account Factory for Terraform () AFT

Die Anweisungen im Abschnitt Epics behandeln die manuelle Implementierung. Die AFT Installationsschritte finden Sie in der README Datei für das GitHub Observability Access Manager-Repository.

Voraussetzungen und Einschränkungen

Voraussetzungen

  • Terraform ist in Ihrem System oder in automatisierten Pipelines installiert oder referenziert. (Wir empfehlen Ihnen, die neueste Version zu verwenden.)

  • Ein Konto, das Sie als zentrales Überwachungskonto verwenden können. Andere Konten erstellen Links zum zentralen Überwachungskonto, um Protokolle einzusehen.

  • (Optional) Ein Quellcode-Repository wie GitHub, AWS CodeCommit, Atlassian Bitbucket oder ein ähnliches System. Ein Quellcode-Repository ist nicht erforderlich, wenn du automatisierte CI/CD-Pipelines verwendest.

  • (Optional) Berechtigungen zum Erstellen von Pull-Requests (PRs) für Code-Reviews und Code-Zusammenarbeit in. GitHub

Einschränkungen

Observability Access Manager hat die folgenden Dienstkontingente, die nicht geändert werden können. Berücksichtigen Sie diese Kontingente, bevor Sie diese Funktion bereitstellen. Weitere Informationen finden Sie in der CloudWatch Dokumentation unter CloudWatch Servicekontingenten.

  • Links zu Quellkonten: Sie können jedes Quellkonto mit maximal fünf Überwachungskonten verknüpfen.

  • Senken: Sie können mehrere Senken für ein Konto erstellen, pro Konto AWS-Region ist jedoch nur eine Senke zulässig.

Darüber hinaus gilt:

  • Senken und Links müssen im selben System erstellt werden. Sie können nicht regionsübergreifend sein AWS-Region.

Regions- und kontenübergreifende Überwachung

Für die regionsübergreifende, kontenübergreifende Überwachung können Sie eine der folgenden Optionen wählen:

  • Erstellen Sie konto- und regionsübergreifende CloudWatch Dashboards für Alarme und Messwerte. Diese Option unterstützt keine Logs und Traces.

  • Implementieren Sie die zentralisierte Protokollierung mithilfe von Amazon OpenSearch Service.

  • Erstellen Sie eine Senke pro Region aus allen Mandantenkonten, übertragen Sie Metriken an ein zentrales Überwachungskonto (wie in diesem Muster beschrieben) und verwenden Sie dann CloudWatch Metrik-Streams, um die Daten an ein gemeinsames externes Ziel oder an Monitoring-Produkte von Drittanbietern wie Datadog, Dynatrace, Sumo Logic, Splunk oder New Relic zu senden.

Architektur

Komponenten

CloudWatch Observability Access Manager besteht aus zwei Hauptkomponenten, die eine kontenübergreifende Observability ermöglichen:

  • Eine Senke bietet Quellkonten die Möglichkeit, Observabilitätsdaten an das zentrale Monitoring-Konto zu senden. Eine Senke stellt im Grunde eine Gateway-Verbindung dar, mit der Quellkonten eine Verbindung herstellen können. Es kann nur ein Senken-Gateway oder eine Senkenverbindung geben, und mehrere Konten können eine Verbindung zu diesem herstellen.

  • Jedes Quellkonto hat einen Link zum Sink-Gateway-Junction, und Observability-Daten werden über diesen Link gesendet. Sie müssen eine Senke erstellen, bevor Sie Links von jedem Quellkonto aus erstellen können.

Architektur

Das folgende Diagramm veranschaulicht Observability Access Manager und seine Komponenten.

Architektur für kontenübergreifende Observability mit Senken und Links.

Tools

AWS-Services

  • Amazon CloudWatch hilft Ihnen dabei, die Kennzahlen Ihrer AWS Ressourcen und der Anwendungen, auf denen Sie laufen, AWS in Echtzeit zu überwachen.

  • AWS Organizationsist ein Kontoverwaltungsservice, mit dem Sie mehrere Konten zu einer Organisation AWS-Konten zusammenfassen können, die Sie erstellen und zentral verwalten.

  • AWS Identity and Access Management (IAM) hilft Ihnen dabei, den Zugriff auf Ihre AWS Ressourcen sicher zu verwalten, indem kontrolliert wird, wer authentifiziert und zu deren Nutzung autorisiert ist.

Tools

  • Terraform ist ein IaC-Tool (Infrastructure as Code) HashiCorp , mit dem Sie Cloud- und lokale Ressourcen erstellen und verwalten können.

  • AWS Control Tower Account Factory for Terraform (AFT) richtet eine Terraform-Pipeline ein, mit der Sie Konten bereitstellen und anpassen können. AWS Control Tower Sie können den Observability Access Manager optional für mehrere Konten skalieren. AFT

Code-Repository

Der Code für dieses Muster ist im GitHub Observability Access Manager-Repository verfügbar.

Bewährte Methoden

  • Markieren Sie in AWS Control Tower Umgebungen das Protokollierungskonto als zentrales Überwachungskonto (Senke).

  • Wenn Sie mehrere Organisationen mit mehreren Konten haben AWS Organizations, empfehlen wir, dass Sie die Organisationen und nicht einzelne Konten in die Konfigurationsrichtlinie aufnehmen. Wenn Sie nur über eine geringe Anzahl von Konten verfügen oder wenn die Konten nicht Teil einer Organisation sind, die in der Konfigurationsrichtlinie aufgeführt ist, können Sie sich dafür entscheiden, stattdessen einzelne Konten einzubeziehen.

Epen

AufgabeBeschreibungErforderliche Fähigkeiten

Klonen Sie das Repository

Klonen Sie das GitHub Observability Access Manager-Repository:

git clone https://github.com/aws-samples/cloudwatch-obervability-access-manager-terraform
AWS DevOps, Cloud-Administrator, AWS Administrator

Geben Sie Eigenschaftswerte für das Senkenmodul an.

Geben Sie in der main.tf Datei (im deployments/aft-account-customizations/LOGGING/terraform/ Ordner des Repositorys) Werte für die folgenden Eigenschaften an:

  • sink_name: Der Name der CloudWatch Senke.

  • allowed_oam_resource_types: Observability Access Manager unterstützt derzeit CloudWatch Metriken, Protokollgruppen und AWS X-Ray Traces.

  • allowed_source_accounts: Die Quellkonten, die Protokolle an das zentrale CloudWatch Senkenkonto senden dürfen.

  • allowed_source_organizations: Die AWS Control Tower Quellorganisationen, die Protokolle an das Central-Senk-Konto CloudWatch senden dürfen.

Weitere Informationen finden Sie in der Dokumentation unter AWS: :Oam: :Sink. AWS CloudFormation

AWS DevOps, Cloud-Administrator, Administrator AWS

Installieren Sie das Sink-Modul.

Exportieren Sie die Anmeldeinformationen des Kontos AWS-Konto , das Sie als Überwachungskonto ausgewählt haben, und installieren Sie das Observability Access Manager-Senkmodul:

Terraform Init Terrafom Plan Terraform Apply
AWS DevOps, Cloud-Administrator, AWS Administrator
AufgabeBeschreibungErforderliche Fähigkeiten

Geben Sie Eigenschaftswerte für das Linkmodul an.

Geben Sie in der main.tf Datei (im deployments/aft-account-customizations/LOGGING/terraform/ Ordner des Repositorys) Werte für die folgenden Eigenschaften an:

  • account_label: Verwenden Sie einen der folgenden Werte:

    • $AccountName: Der Name des Kontos.

    • $AccountEmail: Eine weltweit eindeutige E-Mail-Adresse, zu der auch die E-Mail-Domain gehört (z. B.hello@example.com)

    • $AccountEmailNoDomain: Eine E-Mail-Adresse ohne den Domainnamen.

  • allowed_oam_resource_types: Observability Access Manager unterstützt derzeit CloudWatch Metriken, Protokollgruppen und AWS X-Ray Traces.

Weitere Informationen finden Sie unter AWS: :Oam: :Link in der Dokumentation. AWS CloudFormation

AWS DevOps, Cloud-Administrator, Cloud-Architekt

Installieren Sie das Link-Modul für einzelne Konten.

Exportieren Sie die Anmeldeinformationen einzelner Konten und installieren Sie das Observability Access Manager-Linkmodul:

Terraform Plan Terraform Apply

Sie können das Linkmodul für jedes Konto einzeln einrichten oder es AFTzur automatischen Installation dieses Moduls für eine große Anzahl von Konten verwenden.

AWS DevOps, Cloud-Administrator, Cloud-Architekt
AufgabeBeschreibungErforderliche Fähigkeiten

Überprüfen Sie die Statusmeldung.

  1. Melden Sie sich beim Überwachungskonto an.

  2. Öffnen Sie die CloudWatch Konsole.

  3. Wählen Sie im linken Navigationsbereich die Option Einstellungen aus.

Auf der rechten Seite sollte die Statusmeldung Das Überwachungskonto aktiviert mit einem grünen Häkchen angezeigt werden. Das bedeutet, dass das Monitoring-Konto über eine Observability Access Manager-Senke verfügt, zu der die Links anderer Konten eine Verbindung herstellen.

Genehmigen Sie die link-to-sink Verbindungen.

  1. Wählen Sie unter der Statusmeldung die Option Ressourcen zum Verknüpfen von Konten aus. Die Information bestätigt, dass es sich um das Überwachungskonto handelt, listet die Daten auf, die von den Quellkonten des Mandanten gemeinsam genutzt wurden (Logs, Metrics, Traces), und zeigt die Kontobezeichnung $ anAccountName.

    Dieser Bildschirm bietet zwei Optionen für die Verknüpfung von Mandantenkonten mit dem Überwachungskonto: Genehmigung auf Organisationsebene oder Genehmigung auf Kontoebene. Für jede Option können Sie wählen, ob Sie eine AWS CloudFormation Vorlage für die Genehmigung herunterladen oder jedes Konto einzeln genehmigen möchten.

  2. Der Einfachheit halber wählen Sie „Beliebiges Konto“, um es auf jeder Kontoebene zu genehmigen. Diese Option bietet einen Genehmigungslink für das Konto.

  3. Wählen Sie Kopieren URL, um den Link zu kopieren.

  4. Melden Sie sich bei jedem Quellkonto an.

  5. Fügen Sie den Link in einem Browserfenster ein und wählen Sie Link genehmigen, Verbindung zur Senke herstellen.

  6. Wiederholen Sie den Vorgang für weitere Quellkonten.

Weitere Informationen finden Sie in der CloudWatch Dokumentation unter Monitoring-Konten mit Quellkonten verknüpfen.

AWS DevOps, Cloud-Administrator, Cloud-Architekt
AufgabeBeschreibungErforderliche Fähigkeiten

Kontoübergreifende Daten anzeigen.

  1. Melden Sie sich beim zentralen Überwachungskonto an.

  2. Öffnen Sie die CloudWatch Konsole.

  3. Wählen Sie im linken Navigationsbereich Optionen aus, um kontoübergreifende Logs, Metriken und Traces anzuzeigen.

AWS DevOps, Cloud-Administrator, Cloud-Architekt
AufgabeBeschreibungErforderliche Fähigkeiten

Sehen Sie sich Metriken, Dashboards, Protokolle, Widgets und Alarme von anderen Konten an.

Als zusätzliche Funktion können Sie die CloudWatch Metriken, Dashboards, Protokolle, Widgets und Alarme mit anderen Konten teilen. Jedes Konto verwendet eine IAM Rolle namens CloudWatch- CrossAccountSharingRole , um Zugriff auf diese Daten zu erhalten.

Quellkonten, die eine Vertrauensbeziehung mit dem zentralen Überwachungskonto haben, können diese Rolle übernehmen und Daten aus dem Überwachungskonto einsehen.

CloudWatch stellt ein CloudFormation Beispielskript zum Erstellen der Rolle bereit. Wählen Sie Rolle verwalten aus und führen Sie dieses Skript in den Konten aus, für die Sie Daten anzeigen möchten. IAM

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::XXXXXXXXX:root", "arn:aws:iam::XXXXXXXXX:root", "arn:aws:iam::XXXXXXXXX:root", "arn:aws:iam::XXXXXXXXX:root" ] }, "Action": "sts:AssumeRole" } ] }

Weitere Informationen finden Sie in CloudWatch der CloudWatch Dokumentation unter Aktivieren der kontoübergreifenden Funktionalität.

AWS DevOps, Cloud-Administrator, Cloud-Architekt
AufgabeBeschreibungErforderliche Fähigkeiten

Richten Sie einen konto- und regionsübergreifenden Zugriff ein.

Im zentralen Überwachungskonto können Sie optional eine Kontoauswahl hinzufügen, um einfach zwischen Konten zu wechseln und deren Daten einzusehen, ohne sich authentifizieren zu müssen.

  1. Melden Sie sich beim zentralen Überwachungskonto an.

  2. Öffnen Sie die CloudWatch Konsole.

  3. Wählen Sie im linken Navigationsbereich die Option Einstellungen aus.

  4. Wählen Sie im Abschnitt Kontoübergreifendes und regionsübergreifendes Anzeigen die Option Konfigurieren aus.

  5. Wählen Sie Aktivieren und aktivieren Sie dann das Kontrollkästchen Auswahl in der Konsole anzeigen.

  6. Wählen Sie eine dieser Optionen aus:

    • Eingabe der Konto-ID: Diese Option fordert Sie auf, die Konto-ID manuell einzugeben, wenn Sie Konten ändern möchten, um kontoübergreifende Daten anzuzeigen.

    • AWSKontoauswahl für Unternehmen: Wenn Sie eine Integration CloudWatch mit eingerichtet haben AWS Organizations, bietet diese Option eine Dropdownauswahl mit einer vollständigen Liste der Konten in der Organisation.

    • Benutzerdefinierter Kontoauswahldialog: Mit dieser Option können Sie manuell eine Liste von Konten eingeben, um die Kontoauswahl IDs zu füllen.

  7. Wählen Sie Änderungen speichern.

Weitere Informationen finden Sie in der Dokumentation unter Kontoübergreifende regionsübergreifende Konsole CloudWatch . CloudWatch

AWS DevOps, Cloud-Administrator, Cloud-Architekt

Zugehörige Ressourcen