本文档介绍了如何使用 Google Cloud Terraform Provider 在 Google Cloud 项目中创建提醒政策。Google Cloud Terraform Provider 为提醒政策和通知渠道提供了以下资源:
Terraform 是一种用于构建、更改和版本控制基础架构的工具。它使用配置文件来说明运行单个应用或整个基础架构所需的组件。如需详细了解如何使用 Terraform,请参阅以下文档:
准备工作
如需获得使用 Terraform 创建提醒政策所需的权限,请让管理员向您授予项目的 Monitoring Editor (roles/monitoring.editor
) IAM 角色。
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
如需详细了解 Cloud Monitoring 角色,请参阅使用 Identity and Access Management 控制访问权限。
创建提醒政策
如需在 Google Cloud 项目中创建提醒政策,请执行以下操作:
确保 Terraform 已安装在 Cloud Shell 中。
在 Cloud Shell 中,前往包含 Terraform 配置的目录。
修改配置文件并添加提醒政策。
例如,以下配置定义了一项提醒政策,当虚拟机实例的 CPU 使用率超过 50% 且持续超过 1 分钟时,系统会发送通知,并每 30 分钟发送一次重复通知。
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" } }
在前面的示例中,
notification_channels
字段定义了提醒政策的通知渠道。notification_channel_names
字段用于配置该通知渠道以发送重复通知。这两个字段都引用了email
的display_name
通知渠道,该渠道在 Terraform 配置的其他位置定义。如需了解详情,请参阅使用 Terraform 创建和管理通知渠道。在 Cloud Shell 中,输入
terraform apply
。
如需修改提醒政策,请进行修改,然后重新应用 Terraform 配置。如需了解详情,请参阅使用 Terraform 管理提醒政策。
后续步骤
- 详细了解 Terraform。
- 试用将 Google Cloud Terraform Provider 与 Cloud Monitoring 搭配使用的代码示例。
- 查看 GitHub 上的 Google Cloud Terraform Provider 代码库。
- 提交 GitHub 问题以报告错误或提出有关 Terraform 的问题。