如何使用 Terraform 创建 Azure 警报

时间:2021-06-09 08:21:23

标签: azure terraform monitoring azure-monitoring

我需要使用 terraform 为多个虚拟机创建警报。有人有一个我可以使用的简单示例,例如:

我想监控名为 Rg1 的资源组中名为 vm01、vm01、vm03 的 azure 虚拟机。例如,我想监视 CPU 使用率和内存。 有人可以帮我举个简单的例子吗?

1 个答案:

答案 0 :(得分:1)

你可以试试这个:

resource "azurerm_resource_group" "rg" {
  name     = "example-rg"
  location = "northeurope"
}

resource "azurerm_monitor_action_group" "ag" {
  name                = "myactiongroup"
  resource_group_name = azurerm_resource_group.rg.name
  short_name          = "exampleactiongroup"

}

resource "azurerm_monitor_metric_alert" "alert" {
  name                = "example-metricalert"
  resource_group_name = azurerm_resource_group.rg.name
  scopes              = ["/subscriptions/1234xxx"]
  description         = "description"
  target_resource_type = "Microsoft.Compute/virtualMachines"
  
  criteria { 
    metric_namespace = "Microsoft.Compute/virtualMachines"
    metric_name      = "Percentage CPU"
    aggregation      = "Total"
    operator         = "GreaterThan"
    threshold        = 80
  }

  action {
    action_group_id = azurerm_monitor_action_group.ag.id
  }
}

Azure 警报的 Terraform 提供程序文档是 here