Creare criteri di avviso con Terraform

Questo documento descrive come utilizzare il Google Cloud providerTerraform per creare policy di avviso nel tuo Google Cloud progetto. Il Google Cloud provider Terraform fornisce le seguenti risorse per le policy di avviso e i canali di notifica:

Terraform è uno strumento che consente di creare un'infrastruttura, modificarla e sottoporla al controllo delle versioni. 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 policy di avviso utilizzando Terraform, chiedi all'amministratore di concederti il ruolo IAM Editor di Monitoring (roles/monitoring.editor) nel tuo 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 di Cloud Monitoring, consulta Controllare l'accesso con Identity and Access Management.

Crea una criterio di avviso

Per creare un criterio di avviso nel tuo Google Cloud progetto:

  1. Installa e configura Terraform.

  2. In Cloud Shell, vai alla directory che contiene la configurazione di Terraform.

  3. Modifica il file di configurazione e aggiungi la tua criterio di avviso.

    Ad esempio, la seguente configurazione definisce una 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 = "50"
            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. Il campo notification_channel_names configura il canale di notifica per inviare notifiche ripetute. Entrambi i campi fanno riferimento a un canale di notifica con un display_name di email, definito altrove nella configurazione di Terraform. Per saperne di più, consulta Crea e gestisci canali di notifica con Terraform.

    Puoi utilizzare le etichette per associare un criterio di avviso a un'applicazione App Hub. Per saperne di più, consulta Come associare un criterio di avviso a un'applicazione App Hub.

  4. In Cloud Shell, inserisci terraform apply.

Per modificare il criterio di avviso, apporta le modifiche e poi riapplica la configurazione di Terraform. Per saperne di più, consulta Gestisci i criteri di avviso con Terraform.

Passaggi successivi