# 使用告警模板批量设置指标告警规则
#### 应用场景
在日常运维中，运维人员通常需要对大量云资源的关键指标（如CPU使用率、内存使用率、磁盘使用率等）设置阈值告警，以便在资源出现异常时及时收到通知并处理故障。当云上资源规模较大时，逐条创建告警规则不仅耗时耗力，还容易出现配置不一致、遗漏关键指标等问题。
AOM 2.0提供告警模板功能，通过将一组告警规则组合保存为模板，用户可以对同一个云服务下的多个指标批量创建阈值告警规则、事件告警规则和PromQL告警规则。
本实践演示如何基于告警模板批量配置ECS主机的阈值告警规则，并配合告警通知策略实现告警闭环管理。
[步骤一：创建告警通知规则]
[步骤二：创建自定义模板组]
[步骤三：在模板组中创建告警规则模板]
[步骤四：关联Prometheus实例]
[步骤五：验证告警规则生效]
#### 前提条件
- 已拥有弹性云服务器ECS，且已完成指标接入。具体操作请参见[运行环境接入AOM](https://support.huaweicloud.com/usermanual-aom2/mon_01_0197.html)。
- 已在消息通知服务SMN中创建主题并添加订阅（本实践中的主题名称示例为"aom-alarm"），订阅协议选择"邮件"或"短信"。具体操作请参见[创建主题](https://support.huaweicloud.com/usermanual-smn/zh-cn_topic_0043961401.html)和[添加订阅](https://support.huaweicloud.com/usermanual-smn/smn_ug_0008.html)。
 
#### 约束与限制
- 告警模板最多可创建150个。
- 告警规则（包含指标告警规则和事件告警规则）最多可创建3000个。
- 告警通知规则最多可创建1000个。
 
 #### 步骤一：创建告警通知规则
1. 登录[AOM 2.0控制台](https://console.huaweicloud.com/aom2#/aom2/betaTest)。
2. 在左侧导航栏中选择"告警中心 \> 告警通知"。
3. 在"通知规则管理"页签下，单击"创建告警通知规则"，设置告警通知规则参数。 
   
   | 参数名称   | 示例                        | 参数说明                                                              |
   |:---|:---|:---|
   | 通知规则名称 | ecs-alarm-notify            | 通知规则的名称，只能由数字、字母、中文、下划线、中划线和小数点组成，且不能以下划线、中划线或小数点开头和结尾，最多可输入100个字符。 |
   | 企业项目   | default                    | 所属的企业项目。                                                            |
   | 通知规则类型  | Prometheus监控              | 选择"Prometheus监控"，当指标或事件满足对应告警条件时，系统根据关联的SMN主题与消息模板发送告警通知。           |
   | 规则配置   | 简易通知                        | 本示例选择"简易通知"，直接配置通知范围。                                             |
   | 接收对象    | 主题订阅：aom-alarm            | 选择已创建好的SMN主题aom-alarm。                                             |
   | 通知周期  | 星期一至星期日                   | 告警通知的时间周期。                                                         |
   | 生效时间  | 00:00-23:59               | 告警仅在生效时间段发送通知消息。                                                  |
   | 消息模板    | aom.built-in.template.zh | 通知消息的模板，AOM提供预置的消息模板供选择。                                            |
      
   
   
4. 设置完成后，单击"确定"，完成告警通知规则创建。
 
 #### 步骤二：创建自定义模板组
1. 在左侧导航栏中选择"告警中心 \> 告警模板"。
2. 选择"自定义告警模板"页签，单击"创建自定义模板"。
3. 在"选择告警来源"弹框中选择"Prometheus监控"并单击"创建自定义模板"。
4. 设置自定义模板组的参数，单击"确定"，完成模板组的创建。模板组创建完成后，即可在模板组中创建告警规则模板。 
   
   | 参数名称  | 示例                        | 参数说明                                                        |
   |:---|:---|:---|
   | 模板组名称 | ecs-threshold-template-group | 告警模板组的名称。最多可输入100个字符，只能包含大小写字母，数字，特殊字符(_-)和中文组成，不能以特殊字符开头结尾。 |
   | 企业项目   | default                      | 所属的企业项目。                                                     |
      
   
   
 
 #### 步骤三：在模板组中创建告警规则模板
模板组创建完成后，需要在模板组中创建具体的告警规则模板。
1. 在"自定义告警模板"页面，选择[步骤二：创建自定义模板组]中创建的模板组，单击"创建模板"，设置告警模板的参数。
   
   
   | 参数名称      | 示例                          | 参数说明                                                                    |
   |:---|:---|:---|
   | 告警规则模板名称  | ecs-cpu-usage-high           | 告警规则模板名称。告警规则模板名称只能由大小写字母，数字，特殊字符(_-)和中文组成，不能以下划线和中划线开头和结尾，最大长度为100。 |
   | 规则类型   | 指标告警规则                       | 告警规则的类型。                                                            |
   | 配置方式    | 交互模式                        | 指标告警规则的配置方式。包括：交互模式（通过可视化界面配置）、语法模式（PromQL）（通过编写PromQL语句配置）。         |
   | 告警规则详情     | 多指标                         | 按设置的多个指标数据和对应告警条件逐条计算，只要满足一个条件则触发告警。                                 |
   | 指标     | aom_node_cpu_usage（CPU使用率） | 需要监控的指标。                                                                |
   | 统计周期   | 1分钟                         | 指标数据按照所设置的统计周期进行聚合。                                                   |
   | 检测规则    | 平均值 \> 80                   | 指标告警的触发条件。                                                             |
   | 连续周期     | 3                          | 连续多少个周期满足阈值条件后，触发指标告警。连续周期的取值范围为1-30。                               |
   | 告警级别    | 次要                         | 指标告警的级别。                                                               |
   | 检查频率   | 固定间隔 1分钟                    | 根据设置的频率对指标数据查询和分析结果进行检查。                                             |
   | 告警恢复 | 1                          | 连续多少个周期不满足告警条件，恢复告警。                                                 |
   | 无数据处理  | 关闭                        | 连续周期内无指标数据产生或指标数据不足时系统的处理方式，根据业务需要开启或关闭。                             |
      
   
   
2. 设置完成后，单击"确定"，完成该告警规则模板的创建。
3. 参照[1]，继续为ECS新增其他关键指标的阈值告警规则。示例如下表所示：
   
   
   | 规则名称                      | 指标                             | 检测规则        | 连续周期 | 告警级别 |
   |:---|:---|:---|:---|:---|
   | ecs-cpu-usage-high        | aom_node_cpu_usage（CPU使用率）     | 平均值 \> 80   | 3   | 次要   |
   | ecs-cpu-usage-critical   | aom_node_cpu_usage（CPU使用率）     | 平均值 \> 90  | 3    | 重要      |
   | ecs-memory-usage-high     | aom_node_memory_usage（物理内存使用率）  | 平均值 \> 80  | 3   | 次要   |
   | ecs-memory-usage-critical | aom_node_memory_usage（物理内存使用率） | 平均值 \> 90    | 3   | 重要    |
   | ecs-disk-usage-high       | aom_node_disk_usage（磁盘使用率）    | 平均值 \> 80 | 3    | 次要   |
   | ecs-disk-usage-critical   | aom_node_disk_usage（磁盘使用率）       | 平均值 \> 90   | 3    | 重要    |
   | ecs-disk-usage-full     | aom_node_disk_usage（磁盘使用率）      | 平均值 \> 95    | 1    | 紧急  |
      
   
   
4. 依次创建完所有告警规则模板后，模板组配置完成。
 
 #### 步骤四：关联Prometheus实例
告警模板创建完成后，需要将其关联到具体的Prometheus实例，使告警规则生效。
1. 在"自定义告警模板"页面，勾选[步骤三：在模板组中创建告警规则模板]中创建的所有告警规则模板，单击"批量使用模板"。
   
   
   | 参数名称           | 示例                                                                     | 参数说明                                                                                                                                                                                                                                 |
   |:---|:---|:---|
   | Prometheus实例 | Prometheus_AOM_Default                                                   | 下拉列表中显示当前用户账号下的所有default类型、通用实例类型和云服务类型的Prometheus实例，请选择需要关联的实例。                                                                                                                                                                     |
   | 新规则所属的企业项目    | default                                                               | 选择企业项目。不会修改已存在告警规则的企业项目，仅适用于新创建的告警规则。                                                                                                                                                                                                |
   | 更新该模板关联的告警规则 | 开启开关                                                                    | 是否更新该模板关联的告警规则。 - 开启：将使用告警规则模板更新相关联的已存在的告警规则。默认开启。  - 关闭：不会更新告警模板关联的已存在的告警规则。                             |
   | 通知场景         | 勾选"告警触发时"和"告警恢复时"                                                       | 设置发送告警通知的场景。 - 告警触发时：满足触发条件则发送告警通知。  - 告警恢复时：满足恢复条件则发送通知。                    |
   | 告警方式           | 直接告警                                                                    | 设置告警的方式。 - 直接告警：满足告警条件直接发送。需设置通知频率并启用通知规则。  - 告警降噪：对告警信息自动匹配降噪分组规则后再发送，防止告警风暴。   |
   | 通知频率         | 只告警一次                                                                  | 选择发送告警通知的频率。                                                                                                                                                                                                                          |
   | 通知规则         | 开启开关，选择[步骤一：创建告警通知规则]中创建的ecs-alarm-notify | 请开启通知规则开关并选择通知规则（当通知规则开关关闭时，无法使用模板）。系统根据关联SMN主题与消息模板来发送告警通知。                                                                                                                                                                           |
      
   
   
2. 设置完成后，单击"确定"。 
   配置完成后，告警模板中的所有告警规则将批量应用到关联的Prometheus实例，无需逐条创建。您可以在"告警中心 \> 告警规则"页面的"Prometheus监控"页签下查看通过告警模板批量创建的告警规则。
   
   
 
 #### 步骤五：验证告警规则生效
1. 在左侧导航栏中选择"告警中心 \> 告警规则"。
2. 在"Prometheus监控"页签下，查看通过告警模板批量创建的告警规则。确认规则状态为"正常"。
3. 当指标数据满足设定的阈值条件时，系统将自动生成告警。可在左侧导航栏中选择"告警中心 \> 告警列表"，在告警列表中查看已产生的告警信息。
4. 只要指标数据满足已设的通知策略，系统会根据关联的SMN主题与消息模板，以邮件、短信等方式发送告警通知给指定人员。
 
#### 相关文档
- [创建AOM告警通知规则](https://support.huaweicloud.com/usermanual-aom2/mon_01_0015.html)
- [管理Prometheus监控告警模板](https://support.huaweicloud.com/usermanual-aom2/mon_01_0075.html)
 
