了解托管扩展指标 - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

了解托管扩展指标

为集群启用托管扩展时,Amazon EMR 以一分钟的精细程度发布高分辨率数据指标。您可以通过 Amazon EMR 控制台或 Amazon 控制台查看由托管扩展控制的每次调整大小启动和完成的事件。 CloudWatch CloudWatch 指标对于 Amazon EMR 托管扩展的运行至关重要。我们建议您密切监控 CloudWatch 指标,确保数据不会丢失。有关如何配置 CloudWatch 警报以检测缺失指标的更多信息,请参阅使用 Amazon CloudWatch 警报。有关在 Amazon EMR 中使用 CloudWatch 事件的更多信息,请参阅监控 CloudWatch事件。

以下指标指示集群的当前容量或目标容量。仅当启用了托管扩展时,这些指标才可用。对于由实例集组成的集群,将在 Units 中测量集群容量指标。对于由实例组组成的集群,将根据托管扩展策略中使用的单位类型在 NodesvCPU 中测量集群容量指标。

指标 描述
  • TotalUnitsRequested

  • TotalNodesRequested

  • TotalVCPURequested

集群中由托管扩展确定的单位/节点/vCPU 的目标总数。

单位:计数

  • TotalUnitsRunning

  • TotalNodesRunning

  • TotalVCPURunning

正在运行的集群中可用单位/节点/vCPU 的当前总数。当请求集群大小调整时,将在集群中添加或删除新实例后更新此指标。

单位:计数

  • CoreUnitsRequested

  • CoreNodesRequested

  • CoreVCPURequested

集群中由托管扩展确定的核心单位/节点//vCPU 的目标数量。

单位:计数

  • CoreUnitsRunning

  • CoreNodesRunning

  • CoreVCPURunning

集群中正在运行的核心单位/节点/vCPU 的当前数量。

单位:计数

  • TaskUnitsRequested

  • TaskNodesRequested

  • TaskVCPURequested

集群中由托管扩展确定的任务单位/节点/vCPU 的目标数量。

单位:计数

  • TaskUnitsRunning

  • TaskNodesRunning

  • TaskVCPURunning

集群中正在运行的任务单位/节点/vCPU 的当前数量。

单位:计数

以下指标指示集群和应用程序的使用状态。这些指标可用于所有 Amazon EMR 功能,但在为集群启用托管扩展时,将以更高的分辨率和一分钟的精细程度发布数据。您可以将以下指标与上表中的集群容量指标相关联,以了解托管扩展决策。

指标 描述

AppsCompleted

提交给 YARN 并且已完成的应用程序数。

使用案例:监控集群进度

单位:计数

AppsPending

提交给 YARN 并且处于挂起状态的应用程序数。

使用案例:监控集群进度

单位:计数

AppsRunning

提交给 YARN 并且正在运行的应用程序数。

使用案例:监控集群进度

单位:计数

ContainerAllocated

分配的资源容器数量ResourceManager。

使用案例:监控集群进度

单位:计数

ContainerPending

队列中尚未分配的容器数。

使用案例:监控集群进度

单位:计数

ContainerPendingRatio

待处理容器与已分配容器的比率 (ContainerPendingRatio = ContainerPending / ContainerAllocated)。如果 ContainerAllocated = 0,则为 ContainerPendingRatio = ContainerPending。的值 ContainerPendingRatio 代表数字,而不是百分比。此值对基于容器分配行为扩展集群资源很有用。

单位:计数

HDFSUtilization

当前使用的 HDFS 存储的百分率。

使用案例:分析集群性能

单位:百分比

IsIdle

指示集群不再执行任务,但仍处于活动状态并会产生费用。如果没有任何任务和任务处于运行状态,则此指标设置为 1;否则设置为 0。系统每隔五分钟检查一次该值,值为 1 仅表示在检查时集群处于空闲状态,并不表示它整个五分钟内都处于空闲状态。为避免误报,当多次连续五分钟检查获得的值均为 1 时,您应提出警报。例如,当该值在三十分钟或更长时间内都为 1 时,您应提出警报。

使用案例:监控集群性能

单位:布尔值

MemoryAvailableMB

可供分配的内存量。

使用案例:监控集群进度

单位:计数

MRActiveNodes

当前正在运行 MapReduce 任务或作业的节点数量。等效于 YARN 指标 mapred.resourcemanager.NoOfActiveNodes

使用案例:监控集群进度

单位:计数

YARNMemoryAvailablePercentage

YARN 可用的剩余内存百分比 (YARN MemoryAvailablePercentage = MemoryAvailable MB/ MemoryTotal MB)。此值对基于 YARN 内存使用量扩展集群资源很有用。

单位:百分比

绘制托管扩展指标的图表

您可以绘制指标图表,以便直观地显示集群的工作负载模式和 Amazon EMR 托管扩展做出的相应扩展决策,如以下步骤所示。

在 CloudWatch 控制台中绘制托管扩展指标的图表
  1. 打开CloudWatch控制台

  2. 在导航窗格中,选择 Amazon EMR。您可以搜索要监控的集群的集群标识符。

  3. 向下滚动到图形的指标。打开指标显示图形。

  4. 要为一个或多个指标绘制图表,请选中每个指标旁边的复选框。

以下示例介绍了集群的 Amazon EMR 托管扩展活动。该图形显示三个自动缩减期,这些时段可在工作负载活动性较低时节省成本。

绘制托管扩展指标的图形

所有集群容量和使用指标均以一分钟的间隔发布。其它统计信息也与每个一分钟数据相关联,这样您就可以绘制各种函数,如 PercentilesMinMaxSumAverageSampleCount

例如,下图以不同的百分位数 P10、P50、P90、P99 绘制同一 YARNMemoryAvailablePercentage 指标以及 SumAverageMinSampleCount

使用不同百分位数绘制托管扩展指标的图形