面对存在突发性能需求或者时间上不易预测的业务场景,您可创建报警任务关联云监控指标。弹性伸缩会实时统计指标数据并在统计值满足报警条件时触发报警,在生效周期内自动执行伸缩规则,动态调整伸缩组内的ECS实例数量。

操作步骤

  1. 登录弹性伸缩控制台
  2. 在左侧导航栏中,选择自动触发任务管理 > 报警任务
  3. 在顶部菜单栏处,选择地域。
  4. 选择报警任务的监控类型。
    • 如果您计划使用系统定义好的系统监控项,单击系统监控页签。
    • 如果您计划使用自定义的监控项,单击自定义监控页签。
  5. 单击创建报警任务
  6. 配置报警任务。
    1. 填写任务名称。
      长度为2~64个字符,以大小写字母、数字或中文开头,可包含英文句号(.)、下划线(_)或短横线(-)。
    2. 填写任务描述。
    3. 选择监控资源。
      监控资源即您需要监控的伸缩组。
    4. 根据监控类型配置监控信息。
      • 系统监控报警任务:您需要选择一个系统定义的监控项。系统监控支持的监控项,请参见系统监控报警任务
      • 自定义监控报警任务:您需要选择在云监控中预先配置的应用分组、监控项和维度。详细的自定义监控项使用方法,请参见自定义监控报警任务
    5. 配置统计周期。
      您可以选择1分钟2分钟5分钟15分钟。弹性伸缩会根据统计周期收集、汇总和比较数据,粒度越小,越容易触发报警,请根据业务需要选择合理的统计周期。
    6. 配置统计办法。
      统计办法即判定云监控指标值超出阈值范围的规则,您可以围绕平均值、最大值或最小值设置规则。例如,统计办法为CPU使用率大于80%时:
      • 平均值:针对伸缩组内所有ECS实例,CPU使用率平均值大于80%时触发报警。
      • 最大值:针对伸缩组内CPU使用率最高的ECS实例,CPU使用率大于80%时触发报警。
      • 最小值:针对伸缩组内CPU使用率最低的ECS实例,CPU使用率大于80%时触发报警。
    7. 配置重复几次后报警。
      根据统计办法判断云监控指标值超出阈值后,弹性伸缩会记录次数,满足重复次数后才会触发报警。
    8. 配置生效周期。
      在生效周期内,报警任务在报警后会自动执行指定的伸缩规则。否则,报警任务只报警,不执行伸缩规则。
      • 不设置:默认所有时间都生效。
      • 设置Cron表达式:仅在符合表达式的时间范围内生效。Cron表达式的更多信息,请参见Cron表达式
    9. 选择报警触发规则。
      报警触发规则即满足条件时执行的伸缩规则,只能选择被监控伸缩组中的伸缩规则。
  7. 单击确认

Cron表达式

Cron表达式是一个具有时间含义的字符串,每个具有时间含义的字符叫做域,域之间用空格隔开。弹性伸缩报警任务支持5个域的Cron表达式,格式为X X X X XX是一个域的占位符。Cron表达式中的每个域依次表示秒、分钟、小时、日期和月,每个域可以是确定的取值,也可以是具有逻辑意义的特殊字符。

说明 Cron表达式采用UTC+0时区,在配置Cron表达式时,您需要把本地时间换算成在UTC+0时区的时间。比如,中国的时区是UTC+8,如果您计划在中国报警任务的生效周期是每天01:00~02:59点间,需要将计划执行时间减去8小时,设置的Cron表达式应为* * 17-18 * *
表 1. 域取值
是否必需 取值范围 特殊字符
0~59 , - / *
分钟 0~59 , - / *
小时 0~23 , - / *
日期 1~31 , - / * L W
1~12 , - / *
表 2. 特殊字符
特殊字符 含义 示例
* 所有可能的值。 在月域中,*表示每个月。
, 列出枚举值。 在分钟域中,5,20表示第5分钟和第20分钟。
- 范围。 在分钟域中,5-20表示从第5分钟到第20分钟之间的每一分钟。
/ 指定数值的增量。 在分钟域中,0/15表示从第0分钟开始的每15分钟,3/20表示从第3分钟开始的每20分钟。
L 单词Last的首字母,表示最后一天,仅日期域支持该字符。
说明 指定L字符时,避免指定列表或者范围,否则,会导致逻辑问题。
在日期域中,L表示某个月的最后一天。
W 除周末以外的有效工作日,在离指定日期的最近的有效工作日触发事件。W字符寻找最近有效工作日时不会跨过当前月份。 在日期域中5W,如果5日是星期六,则将在最近的工作日星期五,即4日生效。如果5日是星期天,则将在最近的工作日星期一,即6日生效;如果5日在星期一到星期五中的一天,则就在5日生效。
表 3. 取值示例

下表以中国时区UTC+8为例,说明不同的Cron表达式示例代表的含义。在设置Cron表达式时,请注意将本地时间换算成在UTC+0时区的时间。

示例 说明
* * * * * 所有时间都生效
* 0-30 17-18 * * 每天01:00~01:30和02:00~02:30生效
* * 16,18 * * 每天00:00~00:59和02:00~02:59生效
* * 17 1/2 * 从每月第一天开始,每2天01:00~01:59生效。比如,每月前两次生效时间分别是1日01:00~01:59、3日01:00~01:59。
* * 17 L * 每月最后一日01:00~01:59生效
* * 17 5W * 根据每月5日是否是工作日,生效时间不同:
  • 5日是工作日,即在周一至周五之间:当月5日01:00~01:59生效
  • 5日是周六时:当月4日01:00~01:59生效
  • 5日是周天时:当月6日01:00~01:59生效