Este documento descreve como usar o Google Cloud provedor do Terraform para criar políticas de alertas no seu Google Cloud projeto. O provedor do Google Cloud Terraform oferece os seguintes recursos para políticas de alertas e canais de notificaçã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:
- Terraform on Google Cloud documentation (em inglês)
- Google Cloud Provedor do Terraform (em inglês)
- Primeiros passos - Google Cloud
Antes de começar
Para receber as permissões necessárias para criar políticas de alertas usando o Terraform, peça ao administrador para conceder a você o Editor do Monitoring (roles/monitoring.editor) papel do IAM no projeto.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias usando personalizados papéis ou outros predefinidos papéis.
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 Google Cloud projeto, faça o seguinte:
No Cloud Shell, acesse o diretório que contém a configuração do Terraform.
Edite o arquivo de configuração e adicione sua 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 = "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" } }No exemplo anterior, o campo
notification_channelsdefine o canal de notificação para a política de alertas. O camponotification_channel_namesconfigura esse canal de notificação para enviar notificações repetidas. Os dois campos referenciam um canal de notificação com umdisplay_namedeemail, 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.É possível usar rótulos para associar uma política de alertas a um aplicativo do App Hub. Para mais informações, consulte Como associar uma política de alertas a um aplicativo do App Hub.
No Cloud Shell, digite
terraform apply.
Para modificar sua política de alertas, faça as edições e reaplique a configuração do Terraform. Para mais informações, consulte Gerenciar políticas de alertas com o Terraform.
A seguir
- Saiba mais sobre o Terraform (em inglês).
- Teste os exemplos de código que usam o Google Cloud provedor do Terraform com o Cloud Monitoring.
- Confira o Google Cloud provedor do Terraform repositório no GitHub (link em inglês).
- Registre um problema no GitHub para relatar um bug ou fazer uma pergunta sobre o Terraform.
- Use tags para controlar o acesso a políticas de alertas.