

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 了解 Amazon EMR 中的受管擴展指標
<a name="managed-scaling-metrics"></a>

如果為叢集啟用受管擴展，Amazon EMR 會以一分鐘的精細度發布高解析度指標資料。可以使用 Amazon EMR 主控台或 Amazon CloudWatch 主控台，檢視受管擴展功能控制的每個調整大小初始化和完成操作的事件。CloudWatch 指標對於 Amazon EMR 受管擴展功能的操作至關重要。建議您密切監控 CloudWatch 指標，以確保資料不會遺失。如需有關如何設定 CloudWatch 警示以偵測遺失指標的詳細資訊，請參閱[使用 Amazon CloudWatch 警示](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html)。如需有關搭配使用 CloudWatch 事件與 Amazon EMR 的詳細資訊，請參閱[監控 CloudWatch 事件](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-manage-cloudwatch-events.html)。

下列指標可指出叢集的目前或目標容量。只有在啟用受管擴展時，才能使用這些指標。對於由執行個體機群組成的叢集，叢集容量指標會搭配 `Units` 測量。對於由執行個體群組組成的叢集，叢集容量指標則搭配 `Nodes` 或 `vCPU`，根據受管擴展原則中使用的單位類型為單位進行測量。


| 指標 | Description | 
| --- | --- | 
|  [See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/emr/latest/ManagementGuide/managed-scaling-metrics.html)  | 叢集中單位/節點/vCPU 的目標總數，由受管擴展判定。<br />單位：*計數* | 
|  [See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/emr/latest/ManagementGuide/managed-scaling-metrics.html)  | 執行中執行個體內的目前可用單位/節點/vCPU 總數。叢集如被要求調整大小，則在此叢集加入新執行個體或移除執行個體之後，此指標將隨之更新。<br />單位：*計數* | 
|  [See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/emr/latest/ManagementGuide/managed-scaling-metrics.html)  | 叢集中 CORE 單位/節點/vCPU 的目標數，由受管擴展判定。<br />單位：*計數* | 
|  [See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/emr/latest/ManagementGuide/managed-scaling-metrics.html)  | 叢集中正在執行的 CORE 單位/節點/vCPU 的目前數目。<br />單位：*計數* | 
|  [See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/emr/latest/ManagementGuide/managed-scaling-metrics.html)  | 叢集中 TASK 單位/節點/vCPU 的目標數，由受管擴展判定。<br />單位：*計數* | 
|  [See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/emr/latest/ManagementGuide/managed-scaling-metrics.html)  | 叢集中正在執行的 TASK 單位/節點/vCPU 的目前數目。<br />單位：*計數* | 

下列指標會指出叢集和應用程式的使用狀態。這些指標可用於所有 Amazon EMR 功能，但是在啟用叢集的受管擴展時，將以較高的資料解析度和一分鐘的精細度發布指標。您可以將下列指標關聯至前述表格中的叢集容量指標，以瞭解受管擴展決策。


| 指標 | Description | 
| --- | --- | 
| `AppsCompleted` | 提交給已完成 YARN 的應用程式數目。<br />使用案例：監控叢集進度<br />單位：*計數* | 
| `AppsPending` | 提交給處於擱置中狀態之 YARN 的應用程式數目。<br />使用案例：監控叢集進度<br />單位：*計數* | 
| `AppsRunning` | 提交給執行中 YARN 的應用程式數目。<br />使用案例：監控叢集進度<br />單位：*計數* | 
| ContainerAllocated | ResourceManager 所配置的資源容器數目。<br />使用案例：監控叢集進度<br />單位：*計數* | 
| `ContainerPending` | 佇列中尚未配置的容器數目。<br />使用案例：監控叢集進度<br />單位：*計數* | 
| ContainerPendingRatio | 擱置中容器與已配置容器的比率 (ContainerPendingRatio = ContainerPending / ContainerAllocated)。如果 ContainerAllocated = 0，則 ContainerPendingRatio = ContainerPending。ContainerPendingRatio 的值代表數字，而不是百分比。此值適用於根據容器配置行為來調整叢集資源。<br />單位：*計數* | 
| `HDFSUtilization` | 目前使用中 HDFS 儲存體百分比。<br />使用案例：分析叢集效能<br />單位：百分比** | 
| `IsIdle` | 指出叢集不再執行工作，但仍然處於作用中狀態並會產生費用。如果未執行任何任務，而且未執行任何工作，則會設為 1，否則設為 0。每隔五分鐘檢查一次此值，值 1 表示叢集只在檢查時為閒置狀態，而不是整個五分鐘都閒置。為了避免誤判，此值已為 1 且持續多個連續 5 分鐘檢查時，您應該發出警示。例如，如果此值已為 1 且持續 30 分鐘 (含) 以上，則您可以對此值發出警示。<br />使用案例：監控叢集效能<br />單位：*布林值* | 
| `MemoryAvailableMB` | 可供配置的記憶體數量。<br />使用案例：監控叢集進度<br />單位：*計數* | 
| `MRActiveNodes` | 目前執行 MapReduce 任務或工作的節點數目。相當於 YARN 指標 `mapred.resourcemanager.NoOfActiveNodes`。<br />使用案例：監控叢集進度<br />單位：*計數* | 
| `YARNMemoryAvailablePercentage` | 可供 YARN 使用的剩餘記憶體百分比 (YARNMemoryAvailablePercentage = MemoryAvailableMB / MemoryTotalMB)。此值適用於根據 YARN 記憶體用量來調整叢集資源。<br />單位：百分比** | 

下列指標提供 YARN 容器和節點使用的資源相關資訊。來自 YARN 資源管理員的這些指標可讓您深入了解叢集中執行的容器和節點所使用的資源。將這些指標與上一個資料表的叢集容量指標進行比較，可以更清楚地了解受管擴展的影響：


| 指標 | 關聯的版本 | Description | 
| --- | --- | --- | 
| `YarnContainersUsedMemoryGBSeconds` | 可用於發行標籤 7.3.0 和更新版本 | 發佈期間的耗用容器記憶體 \* 秒。<br />**單位：**GB \* 秒 | 
| `YarnContainersTotalMemoryGBSeconds` | 可用於發行標籤 7.3.0 和更新版本 | 發佈期間的毛線容器總數 \* 秒。<br />**單位：**GB \* 秒 | 
| `YarnContainersUsedVCPUSeconds` | 可用於發行標籤 7.5.0 及更高版本 | 發佈期間的耗用容器 VCPU \* 秒。<br />**單位：**VCPU \* 秒 | 
| `YarnContainersTotalVCPUSeconds` | 可用於發行標籤 7.5.0 及更高版本 | 發佈期間的總容器 VCPU \* 秒。<br />**單位：**VCPU \* 秒 | 
| `YarnNodesUsedMemoryGBSeconds` | 可用於發行標籤 7.5.0 及更高版本 | 發佈期間的耗用節點記憶體 \* 秒。<br />**單位：**GB \* 秒 | 
| `YarnNodesTotalMemoryGBSeconds` | 可用於發行標籤 7.5.0 及更高版本 | 發佈期間的總節點記憶體 \* 秒。<br />**單位：**GB \* 秒 | 
| `YarnNodesUsedVCPUSeconds` | 可用於發行標籤 7.3.0 和更新版本 | 發佈期間的耗用節點 VCPU \* 秒。<br />**單位：**VCPU \* 秒 | 
| `YarnNodesTotalVCPUSeconds` | 可用於發行標籤 7.3.0 和更新版本 | 發佈期間的總節點 VCPU \* 秒。<br />**單位：**VCPU \* 秒 | 

## 繪製受管擴展指標圖形
<a name="managed-scaling-graphic"></a>

您可以繪製指標圖形，以視覺化方式呈現叢集的工作負載模式以及 Amazon EMR 受管擴展功能所做的對應擴展決策，如下列步驟所示。

**在 CloudWatch 主控台中繪製受管擴展指標圖形**

1. 開啟 [CloudWatch 主控台](https://console.aws.amazon.com/cloudwatch/)。

1. 在導覽窗格中，選擇 **Amazon EMR**。您可以在叢集搜尋叢集識別符以進行監控。

1. 向下捲動到指標以製作圖形。開啟一個指標以顯示圖形。

1. 若要將一或多個指標圖形化，請選取各個指標旁的核取方塊。

下列範例說明叢集的 Amazon EMR 受管擴展活動。此圖形顯示的三個自動向下擴展期間，可在工作負載較少時節省成本。

![繪製受管擴展指標圖形](http://docs.aws.amazon.com/zh_tw/emr/latest/ManagementGuide/images/Managed_Scaling_Decision.png)


所有叢集容量和使用量指標都會以一分鐘的間隔發佈。其他統計資訊也已關聯至每一分鐘資料，且可供您執行各種功能，例如 `Percentiles`、`Min`、`Max`、`Sum`、`Average`、`SampleCount`。

例如，下面圖形會以不同的百分位數繪製相同的 `YARNMemoryAvailablePercentage` 指標，這些百分位數分別是 P10、P50、P90、P99，以及 `Sum`、`Average`、`Min`、`SampleCount`。

![以不同百分位數繪製受管擴展指標](http://docs.aws.amazon.com/zh_tw/emr/latest/ManagementGuide/images/Managed_Scaling_Metrics.png)
