In diesem Dokument wird beschrieben, wie Sie mit dem Google Cloud-Terraform-Anbieter Benachrichtigungsrichtlinien in Ihrem Google Cloud-Projekt erstellen. Der Google Cloud Terraform-Anbieter stellt die folgenden Ressourcen für Benachrichtigungsrichtlinien und Benachrichtigungskanäle zur Verfügung:
Terraform ist ein Tool zum Erstellen, Ändern und zur Versionsverwaltung von Infrastruktur. Terraform verwendet Konfigurationsdateien, um die Komponenten zu beschreiben, die zum Ausführen einer einzelnen Anwendung oder Ihrer gesamten Infrastruktur erforderlich sind. Weitere Informationen zur Verwendung von Terraform finden Sie in den folgenden Dokumenten:
- Dokumentation zu Terraform in Google Cloud
- Google Cloud Terraform-Anbieter
- Erste Schritte – Google Cloud
Hinweise
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Monitoring Editor (roles/monitoring.editor
) für Ihr Projekt zu gewähren, damit Sie die Berechtigungen erhalten, die Sie zum Erstellen von Benachrichtigungsrichtlinien mithilfe von Terraform benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.
Möglicherweise können Sie die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Weitere Informationen zu Cloud Monitoring-Rollen finden Sie unter Zugriff mit Identity and Access Management steuern.
Benachrichtigungsrichtlinie erstellen
So erstellen Sie eine Benachrichtigungsrichtlinie in Ihrem Google Cloud-Projekt:
Prüfen Sie, ob Terraform in Cloud Shell installiert ist.
Rufen Sie in Cloud Shell das Verzeichnis auf, das Ihre Terraform-Konfiguration enthält.
Bearbeiten Sie die Konfigurationsdatei und fügen Sie die Benachrichtigungsrichtlinie hinzu.
Die folgende Konfiguration definiert beispielsweise eine Benachrichtigungsrichtlinie, die eine Benachrichtigung sendet, wenn die CPU-Auslastung einer VM-Instanz länger als eine Minute über 50% liegt. Dabei werden alle 30 Minuten wiederholte Benachrichtigungen gesendet.
resource "google_monitoring_alert_policy" "alert_policy" { display_name = "CPU Utilization > 50%" documentation { content = "The $${metric.display_name} of the $${resource.type} $${resource.label.instance_id} in $${resource.project} has exceeded 50% for over 1 minute." } combiner = "OR" conditions { display_name = "Condition 1" condition_threshold { comparison = "COMPARISON_GT" duration = "60s" filter = "resource.type = \"gce_instance\" AND metric.type = \"compute.googleapis.com/instance/cpu/utilization\"" threshold_value = "0.5" trigger { count = "1" } } } alert_strategy { notification_channel_strategy { renotify_interval = "1800s" notification_channel_names = [google_monitoring_notification_channel.email.name] } } notification_channels = [google_monitoring_notification_channel.email.name] user_labels = { severity = "warning" } }
Im vorherigen Beispiel definiert das Feld
notification_channels
den Benachrichtigungskanal für die Benachrichtigungsrichtlinie. Das Feldnotification_channel_names
konfiguriert diesen Benachrichtigungskanal so, dass wiederholte Benachrichtigungen gesendet werden. Beide Felder verweisen auf einen Benachrichtigungskanal mit demdisplay_name
-Wertemail
, der an anderer Stelle in der Terraform-Konfiguration definiert ist. Weitere Informationen finden Sie unter Benachrichtigungskanäle mit Terraform erstellen und verwalten.Geben Sie in Cloud Shell
terraform apply
ein.
Wenn Sie die Benachrichtigungsrichtlinie ändern möchten, nehmen Sie die gewünschten Änderungen vor und wenden Sie dann die Terraform-Konfiguration noch einmal an. Weitere Informationen finden Sie unter Benachrichtigungsrichtlinien mit Terraform verwalten.
Nächste Schritte
- Weitere Informationen zu Terraform
- Codebeispiele testen, in denen der Google Cloud-Terraform-Anbieter mit Cloud Monitoring verwendet wird
- Google Cloud Terraform Provider-Repository auf GitHub ansehen
- Ein GitHub-Problem melden, um einen Fehler zu melden oder eine Frage zu Terraform zu stellen