In diesem Artikel erkläre ich, wie AWS Managed Grafana verwendet werden kann, um CloudWatch-Protokollgruppen und Metriken in ganzen AWS-Organisationen zu überwachen und umfassende Dashboards zu erstellen. Bei Bedarf können mehrere AWS-Konten und -Organisationen mit AWS Managed Grafana verbunden werden, indem die CloudWatch-Funktion zur kontoübergreifenden Beobachtung genutzt wird.
Überblick
Wie im Architekturdiagramm dargestellt, wird AWS Managed Grafana in einem AWS Monitoring Account erstellt. Außerdem wird für jede AWS-Organisation, die verbunden werden muss, eine IAM-Rolle erstellt. Diese Rolle kann von AWS Managed Grafana übernommen werden und hat die Berechtigung CloudWatchReadOnlyAccess. Die kontoübergreifende Beobachtungsfunktion von CloudWatch kann auch im Überwachungskonto aktiviert werden. Dazu wird eine Senke im Monitoring Account erstellt und eine Verknüpfung in allen AWS-Konten, die verbunden werden müssen, hergestellt.
Mit dieser Einrichtung kann die IAM-Rolle und damit AWS Managed Grafana auf alle CloudWatch Log Groups und Metriken zugreifen, für die ein Link erstellt wurde.
Dies kann auch über mehrere AWS-Organisationen hinweg verwendet werden, indem eine IAM-Rolle in der zusätzlichen AWS-Organisation erstellt und die kontenübergreifende Beobachtbarkeit von CloudWatch aktiviert wird.
Deployment der Lösung
1. Erstellen von CloudWatch kontoübergreifender Beobachtungsmöglichkeit Sink
Im Monitoring Account wird der CloudWatch Cross-Account Observability Sink mithilfe einer CloudFormation-Vorlage erstellt. Bei Bedarf können die oam:ResourceTypes erweitert werden; derzeit sind nur „AWS::CloudWatch::Metric“ und „AWS::Logs::LogGroup“ zugelassen.
2. Erstellen eines CloudWatch Cross-Account Observability Links
In allen Konten, in denen Grafana auf CloudWatch LogGroups und Metriken zugreifen muss, muss der CloudWatch Cross-Account Observability Link mit einer CloudFormation-Vorlage erstellt werden. Diese Vorlage kann einfach als StackSet auf alle gewünschten Konten ausgerollt werden.
3. IAM-Rolle für Grafana erstellen
Im Monitoring Account muss die folgende IAM Role erstellt werden, die von Grafana mit der CloudWatchReadOnlyAccess-Policy übernommen werden kann.
4. AWS Managed Grafana erstellen
Im Monitoring Account kann nun Grafana erstellt werden. Es gibt verschiedene Optionen, die ausgewählt werden können, wie z. B. PluginAdminEnabled oder AuthenticationProviders. Nachfolgend finden Sie eine CloudFormation-Vorlage, die für die von mir beschriebene Lösung funktioniert und AWS Identity Center als Authentifizierungsanbieter verwendet.
Unter Resources -> AmazonGrafanaWorkspaceIAMRole -> Properties -> Policies -> PolicyDocument -> Statement -> Resource -> müssen alle ARNs der in Schritt 3 erstellten IAM-Rollen eingefügt werden.
Hinweis: Die Schritte 1-3 müssen in jeder AWS-Organisation durchgeführt werden, die mit Grafana verknüpft werden soll!
Verwendung der Lösung
Sie können sich nun über den Amazon Managed Grafana Service als Administrator hinzufügen.
Anschließend müssen Sie die Datenquellen verbinden. Dazu geben Sie einfach die IAM-Rollen der einzelnen AWS-Organisationen ein und klicken auf „ Save & Test“.
In diesem Fall habe ich zwei Datenquellen eingerichtet: eine für die Prod AWS Organization und eine für die Test AWS Organization.
Schließlich können Sie jetzt Dashboards nach Belieben erstellen und auf alle CloudWatch Log-Gruppen und Metriken von allen verbundenen Konten zugreifen.
Kosten der Lösung
Die kontoübergreifende Beobachtbarkeit in CloudWatch ist ohne zusätzliche Kosten für Protokolle und Metriken möglich.
Der Amazon Managed Grafana Service wird auf der Grundlage aktiver Benutzer berechnet, was eine noch kostengünstigere Lösung darstellt. Und so funktioniert es:
- Admin-/Editor-Benutzer: $9 USD pro aktivem Benutzer pro Monat
- Viewer-Benutzer: $5 USD pro aktivem Benutzer pro Monat
Wichtig ist, dass die Abrechnung auf der Grundlage der aktiven Benutzer erfolgt, nicht auf der Grundlage der Gesamtzahl der Benutzer mit Zugang. Ein Beispiel:
Wenn Sie 100 Editoren und 100 Viewern Zugriff gewährt haben, sich aber in einem bestimmten Monat nur 20 Editoren und 30 Viewer tatsächlich in den Arbeitsbereich einloggen, werden Ihnen nur diese aktiven Benutzer in Rechnung gestellt: 20 Editoren und 30 Viewer.
Diese Lösung bietet Ihnen ein hervorragendes Preis-Leistungs-Verhältnis. Sie ermöglicht Ihnen die Überwachung mehrerer AWS-Organisationen von einem Ort aus zu niedrigen Kosten pro Benutzer. Sie ist besonders nützlich für Unternehmen mit vielen AWS-Konten, die alles auf einmal im Auge behalten müssen.
Fazit
Diese AWS Managed Grafana-Lösung für die Überwachung mehrerer AWS-Organisationen verdeutlicht die Leistungsfähigkeit von Cloud-nativen Tools bei der Vereinfachung komplexer Überwachungsaufgaben. Sie bietet einen zentralisierten, kostengünstigen und skalierbaren Ansatz für die Überwachung verschiedener AWS-Umgebungen.
Die wichtigsten Vorteile sind:
- Vereinfachte Überwachung über mehrere AWS-Organisationen hinweg
- Kosteneffizienz mit aktiver benutzerbasierter Preisgestaltung
- Einfache Skalierbarkeit, wenn Ihre Infrastruktur wächst
- Sichere Überwachung mit den integrierten Funktionen von AWS
- Anpassbare Dashboards für spezifische Anforderungen
Ich hoffe, Sie fanden diesen Artikel hilfreich und informativ. Die Implementierung dieser Lösung kann Ihre AWS-Überwachungsfunktionen erheblich verbessern, aber wir wissen, dass jedes Unternehmen seine eigenen Bedürfnisse und Herausforderungen hat.
Wenn Sie Unterstützung bei der Einrichtung dieser Lösung benötigen, sie an Ihre spezifischen Anforderungen anpassen möchten oder Fragen zur AWS-Überwachung und -Verwaltung haben, zögern Sie bitte nicht, sich an unser Team bei PCG zu wenden.
Sehen Sie sich unsere AWS Landing Zone & Überwachung an!
Teilen Sie uns gerne Ihr Feedback und Ihre Gedanken zu diesem Thema mit!