创建 CPU 使用率警报 - Amazon CloudWatch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

创建 CPU 使用率警报

您可以创建一个 CloudWatch 警报,该警报在状态从OKALARM

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

设置 CPU 使用情况警报Amazon Web Services Management Console

可以执行以下步骤以使用 Amazon Web Services Management Console创建 CPU 使用率警报。

根据 CPU 利用率创建警报

  1. 通过以下网址打开 CloudWatch 控制台:https://console.aws.amazon.com/cloudwatch/

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

  3. 选择选择指标

  4. All metrics (所有指标) 选项卡中,选择 EC2 metrics (EC2 指标)

  5. 选择一个指标类别(例如,Per-Instance Metrics (每个实例的指标))。

  6. 找到所需实例的行,该行将在InstanceId列和CPU 使用率中的指标名称column. 选中此行旁边的复选框,然后选择 Select metric (选择指标)

  7. Specify metric and conditions (指定指标和条件) 下,对于 Statistic (统计数据),选择 Average (平均值),然后选择一个预定义百分位数,或指定自定义百分位数(例如 p95.45)。

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

  9. 条件下面,指定以下内容:

    1. 对于 Threshold type (阈值类型) 下,选择 Static (静态)

    2. 对于 Whenever CPUUtilization is (每当 CPU 利用率为),指定 Greater (更大)。在 than... (比较...) 下,指定在 CPU 利用率超过此百分比时触发警报进入 ALARM(警报)状态的阈值。例如,70。

    3. 选择其他配置。对于触发警报的数据点数,指定必须有多少个评估期(数据点)处于 ALARM 状态才能触发警报。如果此处的两个值匹配,则会创建一个警报;如果多个连续评估期超出阈值,该警报将变为 ALARM 状态。

      要创建“M (最大为 N)”警报,为第一个值指定的数字应小于为第二个值指定的数字。有关更多信息,请参阅评估警报

    4. 对于缺失数据处理,选择在缺失某些数据点时的警报行为。有关更多信息,请参阅配置 CloudWatch 警报处理缺少数据的方式

    5. 如果警报将百分比值作为监控的统计数据,将显示样本数少的百分比框。使用它来选择是评估还是忽略采样率低的案例。如果选择忽略 (保持警报状态),在样本大小太小时,将始终保持当前警报状态。有关更多信息,请参阅基于百分比的 CloudWatch 警报和低数据采样

  10. 选择 Next

  11. Notification (通知) 下,选择 In alarm (处于警报中),并选择当警报处于 ALARM 状态时要通知的 SNS 主题。

    要让警报为相同警报状态或不同警报状态发送多个通知,请选择添加通知

    要让警报不发送通知,请选择删除

  12. 在完成后,选择下一步

  13. 输入警报的名称和说明。名称只能包含 ASCII 字符。然后选择 Next

  14. Preview and create 下面,确认具有所需的信息和条件,然后选择 Create alarm

设置 CPU 使用情况警报Amazon CLI

可以执行以下步骤以使用 Amazon CLI创建 CPU 使用率警报。

根据 CPU 利用率创建警报

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

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

    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

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

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