Ich möchte ein Amazon-Simple-Notification-Service-(Amazon-SNS)-Thema mit einem Amazon CloudWatch-Alarm über verschiedene AWS-Konten hinweg aufrufen.
Behebung
Hinweis: Die folgende Lösung verwendet zwei Konten.
Verwende Konto A, um den CloudWatch-Alarm zu erstellen, und Konto B, um ein Amazon-SNS-Thema zu erstellen. Aktualisiere dann die Zugriffsrichtlinie des SNS-Themas, damit der Alarm aus Konto A Nachrichten veröffentlichen kann.
Ein SNS-Thema in Konto B erstellen
Führe die folgenden Schritte aus:
- Öffne die Amazon-SNS-Konsole.
- Wähle im Navigationsbereich Themen und wähle dann Thema erstellen aus.
- Wähle Standard als Thementyp aus und gib dann einen Namen für das Thema an.
- Wähle Thema erstellen aus und kopiere dann den Amazon-Ressourcennamen (ARN) des Themas.
- Wähle im Navigationsbereich Abonnements und dann Abonnement erstellen aus.
- Füge den ARN des Themas im Abschnitt Themen-ARN hinzu und wähle dann E-Mail als Protokoll aus.
- Wähle Abonnement erstellen aus und überprüfe dann deine E-Mails, um das Abonnement zu bestätigen.
Einen CloudWatch-Alarm in Konto A erstellen
Führe die folgenden Schritte aus:
- Öffne die CloudWatch-Konsole.
- Wähle im Navigationsbereich Alarme und dann Alarm erstellen aus.
- Wähle deine Metrik aus und gib dann Details für die Schwellenwert- und Vergleichsparameter an.
- Wähle unter Aktionen konfigurieren im Abschnitt Benachrichtigungen die Option Themen-ARN verwenden, um andere Konten zu benachrichtigen und gib den Themen-ARN aus Konto B ein.
- Erstelle einen Namen für den Alarm und wähle dann Alarm erstellen aus.
Zugriffsrichtlinie des SNS-Themas in Konto B aktualisieren
Wenn du die Zugriffsrichtlinie des SNS-Themas in Konto B aktualisierst, kann der Alarm Nachrichten veröffentlichen.
Führe die folgenden Schritte aus:
-
Öffne SNS-Konsole.
-
Wähle im Navigationsbereich Themen aus und wähle dann das Thema aus.
-
Wähle Bearbeiten aus und füge dann die folgende Anweisung zur Richtlinie hinzu:
{
"Statement": [{
"Effect": "Allow",
"Principal": {
"Service": "cloudwatch.amazonaws.com"
},
"Action": "SNS:Publish",
"Resource": "arn:aws:sns:us-east-2:444455556666:MyTopic",
"Condition": {
"ArnLike": {
"aws:SourceArn": "arn:aws:cloudwatch:us-east-2:111122223333:alarm:*"
},
"StringEquals": {
"aws:SourceAccount": "111122223333"
}
}
}]
}
Hinweis: Ersetze in der vorherigen Richtlinie die Beispielwerte durch deine Werte.
Alarm testen
Um den Alarm zu testen, ändere entweder den Alarmschwellenwert basierend auf den Metrikdatenpunkten oder führe den Befehl set-alarm-state aus. Wenn du den Alarmschwellenwert oder den Alarmzustand änderst, erhältst du eine E-Mail-Benachrichtigung.
Ähnliche Informationen
Einem beliebigen CloudWatch-Alarm erlauben, in ein Thema in einem anderen Konto zu veröffentlichen
Warum habe ich keine SNS-Benachrichtigung für meinen CloudWatch-Alarmauslöser erhalten?