Questo documento descrive come utilizzare il Google Cloud provider Terraform per creare criteri di avviso nel tuo progetto Google Cloud . Il Google Cloud provider Terraform fornisce le seguenti risorse per i criteri di avviso e i canali di notifica:
Terraform è uno strumento per creare, modificare e sottoporre al controllo delle versioni l'infrastruttura. Utilizza i file di configurazione per descrivere i componenti necessari per eseguire una singola applicazione o l'intera infrastruttura. Per saperne di più sull'utilizzo di Terraform, consulta i seguenti documenti:
Prima di iniziare
Per ottenere le autorizzazioni
necessarie per creare criteri di avviso utilizzando Terraform,
chiedi all'amministratore di concederti il
ruolo IAM Editor Monitoring (roles/monitoring.editor
) nel progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Per saperne di più sui ruoli Cloud Monitoring, consulta Controllare l'accesso con Identity and Access Management.
Crea un criterio di avviso
Per creare un criterio di avviso nel tuo progetto Google Cloud :
In Cloud Shell, vai alla directory che contiene la configurazione Terraform.
Modifica il file di configurazione e aggiungi la criterio di avviso.
Ad esempio, la seguente configurazione definisce un criterio di avviso che invia una notifica quando l'utilizzo della CPU di un'istanza VM è superiore al 50% per più di un minuto, con notifiche ripetute inviate ogni 30 minuti.
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" } }
Nell'esempio precedente, il campo
notification_channels
definisce il canale di notifica per la criterio di avviso. Il camponotification_channel_names
configura il canale di notifica per inviare notifiche ripetute. Entrambi i campi fanno riferimento a un canale di notifica con un valoredisplay_name
diemail
, definito altrove nella configurazione Terraform. Per saperne di più, consulta la pagina Creare e gestire canali di notifica con Terraform.Puoi utilizzare le etichette per associare una criterio di avviso a un'applicazione App Hub. Per ulteriori informazioni, consulta Come associare un criterio di avviso a un'applicazione App Hub.
In Cloud Shell, inserisci
terraform apply
.
Per modificare il criterio di avviso, apporta le modifiche e riapplica la configurazione Terraform. Per maggiori informazioni, consulta Gestire i criteri di avviso con Terraform.
Passaggi successivi
- Scopri di più su Terraform.
- Prova gli esempi di codice che utilizzano il provider Terraform con Cloud Monitoring.Google Cloud
- Visualizza il Google Cloud repository del provider Terraform su GitHub.
- Invia una segnalazione su GitHub per segnalare un bug o porre una domanda su Terraform.