Questo documento descrive come utilizzare il provider Terraform di Google Cloud per creare criteri di avviso nel tuo progetto Google Cloud. Il provider Terraform per Google Cloud fornisce le seguenti risorse per i criteri di avviso e canali di notifica:
Terraform è uno strumento per creare, modificare e sottoporre a 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 le seguenti risorse 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 monitoraggio (roles/monitoring.editor
) nel progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Per ulteriori informazioni sui ruoli di 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:
Assicurati che Terraform sia installato in Cloud Shell.
In Cloud Shell, vai alla directory contenente la configurazione Terraform.
Modifica il file di configurazione e aggiungi il 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 supera il 50% per oltre 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 il criterio di avviso. La Il camponotification_channel_names
configura il canale di notifica per inviare notifiche ripetute. Entrambi i campi fanno riferimento a una notifica canale con un valoredisplay_name
pari aemail
, che viene definito in un altro punto della configurazione di Terraform. Per ulteriori informazioni, vedi Creare e gestire canali di notifica con Terraform.In Cloud Shell, inserisci
terraform apply
.
Per modificare il criterio di avviso, apporta le modifiche e poi applica di nuovo la configurazione Terraform. Per ulteriori informazioni, consulta Gestire i criteri di avviso con Terraform.
Passaggi successivi
- Scopri di più su Terraform.
- Prova gli esempi di codice che utilizzano il fornitore Terraform di Google Cloud con Cloud Monitoring.
- Visualizza il repository del provider Terraform di Google Cloud su GitHub.
- Segnala un problema su GitHub per segnalare un bug o inviare una richiesta su Terraform.