Crea criteri di avviso con Terraform

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:

  1. Assicurati che Terraform sia installato in Cloud Shell.

  2. In Cloud Shell, vai alla directory contenente la configurazione Terraform.

  3. 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 campo notification_channel_names configura il canale di notifica per inviare notifiche ripetute. Entrambi i campi fanno riferimento a una notifica canale con un valore display_name pari a email, che viene definito in un altro punto della configurazione di Terraform. Per ulteriori informazioni, vedi Creare e gestire canali di notifica con Terraform.

  4. 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