
# 配置主机告警并查看生成的告警
#### 步骤一：配置主机告警
1. 在监控服务左侧导航栏选择"告警 \> 策略配置"。
2. 单击"统一告警定义"，进入告警定义页面。
3. 单击"创建"。
4. 配置告警定义规则参数，例如CPU利用率大于等于10%就上报告警，配置如[图1]所示，参数说明如[表1]所示，配置完成后，单击"确定"。
   
   图1配置告警定义规则   
   ![](https://support.huaweicloud.com/bestpractice-appstage/zh-cn_image_0000002364238721.png "点击放大")
    表1告警定义规则参数说明 
   | 参数     | 示例                                                                  | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
   |:---|:---|:---|
   | 指标来源   | **监控指标**                                                            | 选择告警的指标来源。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
   | 告警定义名称 | **showtestvm**                                                      | 设置告警定义的名称，长度不超过512个字符，告警定义名称支持如下2种命名方式： - 普通命名。  - 表达式命名，使用{{$labels.变量名}}命名，支持的变量如下： - cluster：所在ERS集群名称  - namespace：命名空间  - workload：工作负载  - tenant_id：租户ID  - application_id：应用ID  - service_id：服务ID  - site：站点   例如想要获取CCE集群内存平均使用率大于70%告警，可以命名为："{{$labels.cluster}}集群的内存使用率超过70%"。    |
   | 级别     | **一般**                                                              | 选择该规则生成告警的级别。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
   | 告警类型   | **Host@cpu**                                                        | 选择告警类型，上报的告警会显示类型信息，可根据类型筛选查看告警。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
   | 持续时间   | **1**                                                               | 指标持续异常的时间，以持续时间5min为例，需要异常连续满足5min内的计算点全部异常才会生成告警，否则就不会生成。 持续时间控制了当前指标生成告警的速率。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
   | 运行模式   | **主机**                                                              | 选择告警定义规则的运行模式。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
   | 是否激活   | -                                                                   | 是否激活这条告警定义。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
   | 是否调试   | -                                                                   | 选择是否调试。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
   | 关联监控模板 | **1.1版本的监控模板_OS_DEFAULT**  | 选择需要关联的监控模板。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
   | 指标名称   | **cpu util**                                                        | 选择插件、指标。 指标名称由插件决定，即为主机绑定的插件能够采集到的指标。例如选择cpu_iowait，指的就是宿主机的cpu io等待时间，在比较方式里可以根据不同的策略来决定当前指标是否异常，异常则生产告警。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   | 比较方式   | **固定阈值 \>= 10**                                                     | - 区间阈值分为在区间内和在区间外。 - 在区间内：指数据值满足在该范围内则指标正常，否则异常。  - 在区间外：指数据值满足不在该范围内则指标正常，否则异常。    - 固定阈值是指数据不满足当前设置表达式则指标异常，有四种表达式，包括大于等于、小于、等于和不等于。  - 同比是计算指标的时候与前一天同一时刻的比较，根据前一条的值的大小来决定当前指标是否异常。例如昨日为100，今日为105，增长阈值设置的为4%，实际超出4%，则指标异常。                                |
   | 告警标签   | -                                                                   | 指标的补充条件，如果存在告警标签则需要满足所有的告警标签才会生成告警。 标签的范围也是由指标定义。例如选择ip=10.123.15.102，则上报的指标数据不仅需要满足指标的比较方式同时也需要满足ip=10.123.15.102才能产生指标，如果是同一个业务下其他ip的异常，则不会产生告警。 标签的判断有四种形式：等于、不等于、正则匹配成功、正则匹配不成功。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
   | 消息模板   | **cpu usage is too high on ecs {{$labels.node}},value {{$value}}%** | 消息模板是告警msg中的具体信息，可选变量名由指标来决定，每一个指标都有自己对应的变量名列表。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
   | 表达式    | -                                                                   | 获取表达式，即根据配置的指标、比较方式等生成表达式。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
      
   
   
 
#### 步骤二：构造主机cpu冲高异常
1. 在ECS主机列表中，选择待构造异常的主机，单击该主机所在行"操作"列的"远程登录"。
2. 登录主机后，执行如下命令，手动创建脚本。 
   ```
   touch   cpu_intensive_task.sh
   vi   cpu_intensive_task.sh
   ```
   
   
3. 在脚本中注入以下数据。 
   ```
   #!/bin/bash
   start=$(date +%s)
   while true
   do
       for ((i=0; i<1000000000; i++))
       do
           let "j = $i * $i"
           now=$(date +%s)
           timepassed=$(($now-$start))
           echo "timepassed=$timepassed"
           if [ $timepassed -ge 6000 ]; then
               echo "it is going to break,bye!"
               break 2
           fi
       done
   done
   ```
   
   
4. 执行如下命令，运行脚本，运行后cpu会进行冲高。 
   ```
   bash   cpu_intensive_task.sh
   ```
   
   
 
#### 步骤三：查看主机异常告警
1. 在监控服务左侧导航栏选择"告警 \> 告警列表"。
2. 在页面上方告警级别中筛选"一般"级别告警，等待一段时间查看已生成的主机告警。
 
