使用 Azure Policy 大规模部署服务运行状况警报

本文介绍如何使用 Azure Policy 跨订阅部署服务运行状况警报。

要求

请参阅在 Azure Policy 中运行所需的权限和角色,了解基于角色的访问控制(RBAC)的 Azure RBAC 权限。

在 Azure 门户中使用 Azure Policy 部署服务运行状况警报规则的步骤

可以通过运行 “配置订阅”来启用服务运行状况监视警报规则 内置策略,将服务运行状况警报规则部署到单个订阅上,也可以跨管理组中的所有订阅部署。

  1. 在 Azure 门户中,导航到 “主页 > 策略”。 策略页的屏幕截图。

  2. 在“创作 > 分配”下,检查是否已分配了 “配置订阅以启用服务运行状况监视警报规则”权限

  3. 如果尚未分配,请在“创作 > 定义”下,搜索 “配置订阅”以启用服务运行状况监视警报规则 并选择它,或使用 此链接

  4. 选择 “分配策略”。用于选择已分配策略的策略页的屏幕截图。

  5. 在“基本信息”选项卡中:

    包含选项卡的策略页的屏幕截图。

    • 作用域 设置为包含要部署服务健康状态警报的订阅的管理组。 还可以选择将其范围限定为单个订阅。 此策略不支持资源组级范围。
    • 排除项 下,添加不应由策略更新的任何订阅。 不会检查这些订阅是否符合性,也没有通过策略创建的任何警报规则或资源。
    • 不要使用任何资源选择器。
    • 确保策略定义包含 配置订阅以启用服务运行状况监视警报 规则。 还可以根据需要更新分配名称和说明。
  6. 在“参数”选项卡中:

  7. “修正 ”选项卡中:

    “修正”选项卡的屏幕截图。

    • 确保已选择系统分配的托管标识,或分配用户分配的托管标识。
    • 选择“ 创建修正任务 ”以自动将策略应用到现有订阅。 如果没有此步骤,该策略仅适用于新订阅。
  8. 选择查看并保存作业。

默认行为

修正运行时,策略会自动在所有不符合要求的订阅中创建以下资源:

  • 名为 rg-serviceHealthAlert 的资源组。
  • 已启用名为 ServiceHealthSubscriptionAlertRule 的警报规则。
  • 名为 ag-ServiceHealthAlertActionGroup 的行动组。

默认情况下,警报规则和操作组被配置为向订阅所有者发送所有类型服务运行状况事件的电子邮件。

默认行为路径的屏幕截图。

自定义选项

注释

在“ 参数 ”选项卡上,选中以关闭 “仅显示需要输入或查看的参数 ”,这将显示策略支持的所有参数。

用于设置参数的屏幕屏幕截图。

  • 效果:允许用户设置策略模式。

    • 已禁用:策略未运行。
    • AuditIfNotExists:策略报告符合性,但不创建任何资源。 它会检查是否存在以下特定的警报规则:
      • 适当的状态为(已启用/禁用)。
      • 指定了到操作组的映射。
      • 指定了检查事件类型的条件。
    • DeployIfNotExists:在修正期间,如果发现订阅不符合要求,则会创建或更新资源。
  • 已启用警报规则
    可以更新此策略创建的警报规则(启用或禁用)的状态,以跨订阅启用或禁用警报规则。

  • 警报规则名称
    策略创建的警报规则的名称。 策略不检查规则的名称,它只检查警报条件、状态以及是否链接到操作组。
    如果已存在满足这些要求的规则,则即使名称不同,该策略也不会创建新规则。 更改名称不会删除任何现有警报规则。

  • 警报规则事件类型
    服务运行状况事件类型,警报规则检查。 此警报规则可用于跨订阅更新警报条件。

  • 现有操作组资源 ID
    输入管理组或订阅中现有操作组的资源 ID(根据策略的范围),该资源 ID 应用于发送警报。 此操作组可用于在不同订阅之间发送警报。
    有关详细信息,请参阅 操作组

    跨订阅的警报路径的屏幕截图。

  • 新建操作组

    • 如果设置为 true,则策略将为警报创建新的作组。
    • 如果设置为 false,则不会创建新的作组。 此步骤在每个订阅中创建一个动作组。
      它可以与 现有操作组资源 ID 参数一起使用。 这两者都映射到警报规则。
  • 新建操作组名称
    输入操作组名称来创建新的操作组。 更新名称不会删除以前创建的任何操作组。 将警报规则映射更新到动作组。

  • 新的操作组角色发送到电子邮件
    使用新动作组进行通知的 Arm 内置角色。
    该策略仅检查警报规则是否链接到作组,它不使用此参数检查符合性。 如果在分配策略后更改此设置,则不会更新操作组。
    若要跨订阅应用更新,请更改 已启用的警报规则警报规则事件类型 参数,或使用 “新建作组名称 ”参数设置新的作组。
    可能的值包括:

    • 贡献者
    • 所有者
    • 读取者
    • 监视读取者
    • 监视参与者
  • 新操作组资源
    新操作组用来发送警报通知的资源。
    任何指定的资源必须已存在。
    目前支持电子邮件、逻辑应用、事件中心、Webhook 和 Azure 函数。
    请参阅关于操作组和逻辑应用集成的文档,或使用Webhook发送警报
    策略仅检查警报规则是否链接到作组,因为它不使用此参数检查符合性。 如果在分配策略后更改此设置,则不会更新操作组。
    若要跨订阅应用更新,请更改 已启用的警报规则警报规则事件类型 设置,或使用 “新建作组名称 ”选项设置新的作组。

    操作组资源的屏幕截图示例。

  • 资源组名称
    仅当策略需要创建警报规则或作组时,才使用此资源组名称。
    策略不检查资源组名称,它只检查警报规则的条件、状态以及它是否链接到作组。
    如果其他资源组中存在匹配规则,则策略不会创建新的规则。 更改名称不会删除任何现有的资源组、警报规则或作组。

  • 资源组位置
    用于创建资源组的位置。

  • 资源标记
    此策略创建的资源上的标签。

使用 Azure Monitor 基线警报为 Azure 登陆区域(AMBA-ALZ)部署服务运行状况警报规则的步骤

AMBA-ALZ 提供高级部署方案,例如 Bicep、Terraform、Azure Pipelines、GitHub Actions 和更广泛的覆盖范围,包括平台警报。

有关如何部署 AMBA-ALZ 的参考,请参阅 部署 AMBA-ALZ 模式简介

有关如何仅部署服务运行状况警报的详细信息,请参阅 “仅部署服务运行状况警报”。