Criar políticas de alertas com o Terraform

Neste documento, descrevemos como usar o provedor Terraform do Google Cloud para criar políticas de alertas no seu projeto do Google Cloud. O provedor Google Cloud Terraform fornece os seguintes recursos para políticas de alertas e canais de notificação:

O Terraform é uma ferramenta para criar, alterar e controlar versões de infraestrutura. Ele usa arquivos de configuração para descrever os componentes necessários para executar um único aplicativo ou toda a infraestrutura. Para mais informações sobre como usar o Terraform, consulte os seguintes documentos:

Antes de começar

Para ter as permissões necessárias para criar políticas de alertas usando o Terraform, peça ao administrador para conceder a você o papel do IAM de Editor do Monitoring (roles/monitoring.editor) no projeto. Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.

Também é possível conseguir as permissões necessárias por meio de papéis personalizados ou de outros papéis predefinidos.

Para mais informações sobre os papéis do Cloud Monitoring, consulte Controlar o acesso com o Identity and Access Management.

criar uma política de alertas

Para criar uma política de alertas no seu projeto do Google Cloud, faça o seguinte:

  1. Verifique se o Terraform está instalado no Cloud Shell.

  2. No Cloud Shell, acesse o diretório que contém sua configuração do Terraform.

  3. Edite o arquivo de configuração e adicione a política de alertas.

    Por exemplo, a configuração a seguir define uma política de alertas que envia uma notificação quando a utilização da CPU de uma instância de VM é maior que 50% por mais de um minuto, com notificações repetidas enviadas a 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 = "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"
      }
    }
    

    No exemplo anterior, o campo notification_channels define o canal de notificação para a política de alertas. O campo notification_channel_names configura esse canal para enviar notificações repetidas. Os dois campos se referem a um canal de notificação com um display_name de email, que é definido em outro lugar na configuração do Terraform. Para mais informações, consulte Criar e gerenciar canais de notificação com o Terraform.

  4. No Cloud Shell, digite terraform apply.

Para modificar a política de alertas, faça as edições e reaplique a configuração do Terraform. Para mais informações, acesse Gerenciar políticas de alertas com o Terraform.

A seguir

  • Saiba mais sobre o Terraform (em inglês).
  • Teste exemplos de código que usam o Provedor do Terraform do Google Cloud com o Cloud Monitoring.
  • Veja o repositório do provedor do Google Cloud Terraform no GitHub.
  • Registre um problema no GitHub para relatar um bug ou fazer uma pergunta sobre o Terraform.