Crear políticas de alertas con Terraform

En este documento se describe cómo usar el proveedor de Terraform para crear políticas de alertas en tu proyecto de Google Cloud . Google Cloud El Google Cloud proveedor de Terraform proporciona los siguientes recursos para las políticas de alertas y los canales de notificaciones:

Terraform es una herramienta para crear, cambiar y versionar infraestructuras. Utiliza archivos de configuración para describir los componentes necesarios para ejecutar una sola aplicación o toda tu infraestructura. Para obtener más información sobre el uso de Terraform, consulta los siguientes documentos:

Antes de empezar

Para obtener los permisos que necesitas para crear políticas de alertas con Terraform, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Editor de Monitoring (roles/monitoring.editor) en tu proyecto. Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.

También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.

Para obtener más información sobre los roles de Cloud Monitoring, consulta Controlar el acceso con Gestión de Identidades y Accesos.

Crear una política de alertas

Para crear una política de alertas en tu Google Cloud proyecto, haz lo siguiente:

  1. Instala y configura Terraform.

  2. En Cloud Shell, ve al directorio que contiene tu configuración de Terraform.

  3. Edita el archivo de configuración y añade tu política de alertas.

    Por ejemplo, la siguiente configuración define una política de alertas que envía una notificación cuando la utilización de la CPU de una instancia de VM es superior al 50% durante más de un minuto, con notificaciones repetidas enviadas cada 30 minutos.

    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"
      }
    }
    

    En el ejemplo anterior, el campo notification_channels define el canal de notificación de la política de alertas. El campo notification_channel_names configura ese canal de notificaciones para que envíe notificaciones repetidas. Ambos campos hacen referencia a un canal de notificación con un display_name de email, que se define en otra parte de la configuración de Terraform. Para obtener más información, consulta el artículo Crear y gestionar canales de notificación con Terraform.

    Puedes usar etiquetas para asociar una política de alertas a una aplicación de App Hub. Para obtener más información, consulta Cómo asociar una política de alertas a una aplicación de App Hub.

  4. En Cloud Shell, escribe terraform apply.

Para modificar tu política de alertas, haz los cambios que quieras y vuelve a aplicar la configuración de Terraform. Para obtener más información, consulta Gestionar políticas de alertas con Terraform.

Siguientes pasos