Amazon CloudWatch
用户指南
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

创建发送电子邮件的 CPU 利用率警报

可以创建一个 CloudWatch 警报,该警报在状态从 OK 变为 ALARM 时使用 Amazon SNS 发送电子邮件。

当 EC2 实例的平均 CPU 利用率在连续指定时段内超出指定阈值时,警报将变为 ALARM 状态。

使用 AWS 管理控制台设置 CPU 利用率警报

创建根据 CPU 利用率发送电子邮件的警报

  1. 通过以下网址打开 CloudWatch 控制台:https://console.amazonaws.cn/cloudwatch/

  2. 在导航窗格中,依次选择 AlarmsCreate Alarm

  3. EC2 Metrics 下,选择指标类别 (例如 Per-Instance Metrics)。

  4. 按以下所示选择指标:

    1. 选择包含实例和 CPUUtilization 指标的行。

    2. 对于统计数据,选择 Average,然后选择一个预定义百分位数,或指定自定义百分位数 (例如 p95.45)。

    3. 选择时段 (例如 5 minutes)。

    4. 选择 Next

     已选中 CPU 利用率指标
  5. 按以下所示定义警报:

    1. Alarm Threshold 下,键入警报的唯一名称 (例如“myHighCpuAlarm”) 和警报的描述 (例如“CPU usage exceeds 70 percent”)。警报名称必须仅包含 ASCII 字符。

    2. Whenever 下,为 is 选择 > 并键入 70。对于 for,键入 2

       指定的警报阈值
    3. Additional settings 下,对于 Treat missing data as,选择 bad (breaching threshold),因为缺失数据点可能表示实例发生故障。

    4. Actions 下,为 Whenever this alarm 选择 State is ALARM。对于 Send notification to,选择一个现有 SNS 主题或创建一个新 SNS 主题。

       指定的警报操作
    5. 要创建新 SNS 主题,请选择 New list。对于 Send notification to,键入 SNS 主题的名称 (例如“myHighCpuAlarm”),并为 Email list 键入在警报状态变为 ALARM 时要将通知发送到的一系列电子邮件地址 (用逗号分隔)。将向每个电子邮件地址发送一封主题订阅确认电子邮件。您必须先确认订阅,然后才会发送通知。

    6. 选择 Create Alarm

使用 AWS CLI 设置 CPU 利用率警报

创建根据 CPU 利用率发送电子邮件的警报

  1. 设置 SNS 主题。有关更多信息,请参阅 设置 Amazon SNS 通知

  2. 使用 put-metric-alarm 命令创建警报,如下所示。

    Copy
    aws cloudwatch put-metric-alarm --alarm-name cpu-mon --alarm-description "Alarm when CPU exceeds 70%" --metric-name CPUUtilization --namespace AWS/EC2 --statistic Average --period 300 --threshold 70 --comparison-operator GreaterThanThreshold --dimensions Name=InstanceId,Value=i-12345678 --evaluation-periods 2 --alarm-actions arn:aws:sns:us-east-1:111122223333:my-topic --unit Percent
  3. 通过使用 set-alarm-state 命令强制更改警报状态来测试警报。

    1. 将警报状态从 INSUFFICIENT_DATA 更改为 OK

      Copy
      aws cloudwatch set-alarm-state --alarm-name cpu-mon --state-reason "initializing" --state-value OK
    2. 将警报状态从 OK 更改为 ALARM

      Copy
      aws cloudwatch set-alarm-state --alarm-name cpu-mon --state-reason "initializing" --state-value ALARM
    3. 检查您是否收到有关警报的电子邮件通知。