亚马逊 EC2 Auto Scaling 的亚马逊 CloudWatch 指标 - Amazon EC2 Auto Scaling
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

亚马逊 EC2 Auto Scaling 的亚马逊 CloudWatch 指标

Amazon EC2 Auto Scaling 会在 AWS/AutoScaling 命名空间中发布以下指标。实际可用的自动扩缩组指标将取决于您是否启用了组指标以及启用了哪些组指标。组指标以一分钟的粒度提供,无需额外付费,但您必须启用它们。

当您启用 Auto Scaling 组指标时,Amazon EC2 Auto Scaling 会尽力向 CloudWatch 每分钟发送一次采样数据。在极少数情况下, CloudWatch 当服务中断时,数据不会被回填以填补组指标历史记录中的空白。

Auto Scaling 组指标

借助这些指标,您可以更清楚地了解自动扩缩组的历史记录,例如组大小随时间推移的变化。

指标 描述
GroupMinSize

自动扩缩组的最小大小。

报告条件:如果启用了指标收集,则报告。

GroupMaxSize

自动扩缩组的最大大小。

报告条件:如果启用了指标收集,则报告。

GroupDesiredCapacity

Auto Scaling 组试图维护的实例数量。

报告条件:如果启用了指标收集,则报告。

GroupInServiceInstances

作为 Auto Scaling 组的一部分运行的实例数量。该指标不包括处于挂起或终止状态的实例。

报告条件:如果启用了指标收集,则报告。

GroupPendingInstances

处于挂起状态的实例数量。挂起的实例尚不可用。该指标不包括处于可用状态或终止状态的实例。

报告条件:如果启用了指标收集,则报告。

GroupStandbyInstances

处于 Standby 状态的实例数。处于此状态的实例仍在运行,但不能有效使用。

报告条件:如果启用了指标收集,则报告。

GroupTerminatingInstances

正处于终止过程中的实例的数量。该指标不包括处于可用状态或挂起状态的实例。

报告条件:如果启用了指标收集,则报告。

GroupTotalInstances

Auto Scaling 组中的实例总数。该指标用于标识处于可用状态、挂起状态和终止状态的实例的数量。

报告条件:如果启用了指标收集,则报告。

当您将混合实例组配置为以不同单位衡量其所需容量时,例如根据每种实例类型的 vCPU 数量分配权重,那么以下指标会计算您的自动扩缩组使用的单位数。如果您未配置混合实例组以不同单位衡量其所需容量,则会填充以下指标,但等于上表中定义的指标。有关更多信息,请参阅 创建混合实例组的设置概述

指标 描述
GroupInServiceCapacity

作为 Auto Scaling 组的一部分运行的容量单位数量。

报告条件:如果启用了指标收集,则报告。

GroupPendingCapacity

待处理的容量单位数。

报告条件:如果启用了指标收集,则报告。

GroupStandbyCapacity

处于 Standby 状态的容量单位数。

报告条件:如果启用了指标收集,则报告。

GroupTerminatingCapacity

正处于终止过程中的容量单位的数量。

报告条件:如果启用了指标收集,则报告。

GroupTotalCapacity

Auto Scaling 组中的容量单位总数。

报告条件:如果启用了指标收集,则报告。

对于具有暖池的自动扩缩组,Amazon EC2 Auto Scaling 还会报告以下指标。有关更多信息,请参阅 使用温池减少启动时间较长的应用程序的延迟

指标 描述
WarmPoolMinSize

暖池的最小大小。

报告条件:如果启用了指标收集,则报告。

WarmPoolDesiredCapacity

Amazon EC2 Auto Scaling 尝试在暖池中维持的容量数。

这相当于 Auto Scaling 组的最大大小减去所需容量,或者等于 Auto Scaling 组的最大预热容量(如果设置)减去所需容量。

但是,如果暖池的最小大小等于或大于最大大小(或者是最大预热容量(如果设置))与 Auto Scaling 组的所需容量之间的差值,则暖池所需容量将等于 WarmPoolMinSize

报告条件:如果启用了指标收集,则报告。

WarmPoolPendingCapacity

暖池中待处理的容量数。该指标不包括处于运行、挂起或终止状态的实例。

报告条件:如果启用了指标收集,则报告。

WarmPoolTerminatingCapacity

暖池中处于终止过程的容量数。该指标不包括处于运行、已停止或挂起状态的实例。

报告条件:如果启用了指标收集,则报告。

WarmPoolWarmedCapacity

横向扩展期间可进入 Auto Scaling 组的容量数。该指标不包括处于挂起或终止状态的实例。

报告条件:如果启用了指标收集,则报告。

WarmPoolTotalCapacity

暖池的总容量,包括处于运行、已停止、挂起或终止状态的实例。

报告条件:如果启用了指标收集,则报告。

GroupAndWarmPoolDesiredCapacity

Auto Scaling 组和暖池结合起来的所需容量。

报告条件:如果启用了指标收集,则报告。

GroupAndWarmPoolTotalCapacity

Auto Scaling 组和暖池结合起来的总容量。这包括处于运行、已停止、挂起、终止或服务中状态的实例。

报告条件:如果启用了指标收集,则报告。

Auto Scaling 组指标的维度

您可以使用以下维度来优化上表中列出的指标。

维度 描述
AutoScalingGroupName

按 Auto Scaling 组名称筛选。

预测性扩缩指标和维度

AWS/AutoScaling 命名空间包括以下预测性扩缩指标。

提供精度为一小时的指标。

您可以通过将预测值与实际值进行比较来评估预测准确性。有关使用这些指标评估预测准确性的更多信息,请参阅使用监控预测性扩展指标 CloudWatch

指标 描述 尺寸
PredictiveScalingLoadForecast

应用程序预计将生成的负载量。

AverageMinimumMaximum 统计数据非常有用,而 Sum 统计数据用处不大。

报告标准:在创建初始预测后报告。

AutoScalingGroupName, PolicyName, PairIndex
PredictiveScalingCapacityForecast

满足应用程序需求所需的预期容量。这基于负载预测以及您希望 Auto Scaling 实例维持的目标利用率水平。

AverageMinimumMaximum 统计数据非常有用,而 Sum 统计数据用处不大。

报告标准:在创建初始预测后报告。

AutoScalingGroupName, PolicyName
PredictiveScalingMetricPairCorrelation

扩展指标与负载指标的每个实例平均值之间的相关性。预测性扩展假设相关性很高。因此,如果您观察到该指标的值很低,最好不要使用指标对。

AverageMinimumMaximum 统计数据非常有用,而 Sum 统计数据用处不大。

报告标准:在创建初始预测后报告。

AutoScalingGroupName, PolicyName, PairIndex
注意

PairIndex 维度会返回与 Amazon EC2 Auto Scaling 所分配负载扩缩指标对的索引相关的信息。目前唯一有效的值是 0

启用 Auto Scaling 组指标(控制台)

启用组指标
  1. 访问 https://console.aws.amazon.com/ec2/,打开 Amazon EC2 控制台,然后从导航窗格中选择 Auto Scaling Groups(Auto Scaling 组)。

  2. 选中您的自动扩缩组旁边的复选框。

    这时将在页面底部打开一个拆分窗格。

  3. 监控选项卡上,选择位于 Auto Scaling下页面顶部的 Auto Scaling 组指标集合启用复选框。

禁用组指标
  1. 访问 https://console.aws.amazon.com/ec2/,打开 Amazon EC2 控制台,然后从导航窗格中选择 Auto Scaling Groups(Auto Scaling 组)。

  2. 选择您的 Auto Scaling 组。

  3. 监控选项卡上,清除 Auto Scaling 组指标集合启用复选框。

启用 Auto Scaling 组指标 (Amazon CLI)

如需启用自动扩缩组指标

使用 enable-metrics-collection 命令启用一个或多个组指标。例如,以下命令可为指定的自动扩缩组启用单个指标。

aws autoscaling enable-metrics-collection --auto-scaling-group-name my-asg \ --metrics GroupDesiredCapacity --granularity "1Minute"

如果省略 --metrics 选项,则启用所有指标。

aws autoscaling enable-metrics-collection --auto-scaling-group-name my-asg \ --granularity "1Minute"
如需禁用自动扩缩组指标

使用 disable-metrics-collection 命令禁用所有组指标。

aws autoscaling disable-metrics-collection --auto-scaling-group-name my-asg