本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 監控 Amazon EMR指標 CloudWatch
指標每五分鐘更新一次,並 CloudWatch 為每個 Amazon EMR叢集自動收集和推送到 。此間隔無法設定。中報告的 Amazon EMR指標不收費 CloudWatch。這些五分鐘資料點指標會封存 63 天,之後會捨棄這些資料。
如何使用 Amazon EMR指標?
下表顯示 Amazon 報告的指標的常見用途EMR。這些是協助您開始的建議,而不是完整清單。如需 Amazon 報告指標的完整清單EMR,請參閱 Amazon 在 EMR中報告的指標 CloudWatch。
運作方式? | 相關指標 |
---|---|
追蹤我的叢集進度 | 查看 RunningMapTasks 、RemainingMapTasks 、RunningReduceTasks ,和 RemainingReduceTasks 指標。 |
偵測閒置叢集 | IsIdle 指標會追蹤叢集是否處於活動狀態,而非目前正在執行的任務。當叢集已閒置一段指定時間 (例如 30 分鐘) 時,您可以設置警示以將其觸發。 |
偵測節點何時耗盡儲存空間 | MRUnhealthyNodes 指標會在一或多個核心或任務節點耗盡本機磁碟儲存並轉換為 UNHEALTHY YARN 狀態時追蹤。例如,核心節點或任務節點的磁碟空間不足,將無法執行任務。 |
偵測叢集何時耗盡儲存空間 | HDFSUtilization 指標會監控叢集的合併HDFS容量,並且可能需要調整叢集大小以新增更多核心節點。例如,HDFS使用率很高,這可能會影響任務和叢集運作狀態。 |
偵測叢集何時在容量減少的情況下執行 | MRLostNodes 指標會追蹤一個或多個核心節點或任務節點無法與主節點通訊。例如,主節點無法存取核心節點或任務節點。 |
如需詳細資訊,請參閱 Amazon EMR叢集終止 NO_SLAVE_LEFT 和核心節點 FAILED_BY_MASTER和 AWSSupport-A nalyzeEMRLogs。
存取 Amazon 的 CloudWatch 指標 EMR
您可以使用 Amazon EMR主控台或 CloudWatch 主控台,檢視 Amazon EMR回報至 CloudWatch 的指標。您也可以使用 CloudWatch CLI 命令mon-get-stats
或 CloudWatch GetMetricStatistics
擷取指標API。如需EMR使用 檢視或擷取 Amazon 指標的詳細資訊 CloudWatch,請參閱 Amazon CloudWatch 使用者指南 。
Amazon 在 EMR中報告的指標 CloudWatch
下表列出 Amazon 在主控台中EMR報告的指標,並推送至 CloudWatch。
Amazon EMR指標
Amazon EMR會將數個指標的資料傳送至 CloudWatch。所有 Amazon EMR叢集都會每隔五分鐘自動傳送指標。指標將封存兩週,之後即會捨棄資料。
AWS/ElasticMapReduce
命名空間包含下列指標。
注意
Amazon 從叢集EMR提取指標。如果叢集無法連接,則不會報告指標,除非叢集再次可用。
以下指標可用於執行 Hadoop 2.x 版本的叢集。
指標 | 描述 |
---|---|
叢集狀態 | |
IsIdle |
指出叢集不再執行工作,但仍然處於作用中狀態並會產生費用。如果未執行任何任務,而且未執行任何工作,則會設為 1,否則設為 0。每隔五分鐘檢查一次此值,值 1 表示叢集只在檢查時為閒置狀態,而不是整個五分鐘都閒置。為了避免誤判,此值已為 1 且持續多個連續 5 分鐘檢查時,您應該發出警示。例如,如果此值已為 1 且持續 30 分鐘 (含) 以上,則您可以對此值發出警示。 使用案例:監控叢集效能 單位:布林值 |
ContainerAllocated |
配置的資源容器數目ResourceManager。 使用案例:監控叢集進度 單位:計數 |
ContainerReserved |
保留容器數目。 使用案例:監控叢集進度 單位:計數 |
ContainerPending |
佇列中尚未配置的容器數目。 使用案例:監控叢集進度 單位:計數 |
ContainerPendingRatio |
待定容器與配置容器的比率 (ContainerPendingRatio = ContainerPending / ContainerAllocated)。如果 ContainerAllocated = 0,則 ContainerPendingRatio = ContainerPending。的值 ContainerPendingRatio 代表數字,而不是百分比。此值適用於根據容器配置行為來調整叢集資源。 單位:計數 |
AppsCompleted |
提交至 YARN 已完成的應用程式數目。 使用案例:監控叢集進度 單位:計數 |
AppsFailed |
提交至 YARN但無法完成的應用程式數目。 使用案例:監控叢集進度、監控叢集運作狀態 單位:計數 |
AppsKilled |
提交至 YARN的應用程式數量已被刪除。 使用案例:監控叢集進度、監控叢集運作狀態 單位:計數 |
AppsPending |
提交至YARN處於待處理狀態的應用程式數量。 使用案例:監控叢集進度 單位:計數 |
AppsRunning |
提交至 YARN 正在執行的應用程式數目。 使用案例:監控叢集進度 單位:計數 |
AppsSubmitted |
提交給 的應用程式數量YARN。 使用案例:監控叢集進度 單位:計數 |
節點狀態 | |
CoreNodesRunning |
運作中核心節點數目。只有在對應的執行個體群組存在時,才會報告此指標的資料點。 使用案例:監控叢集運作狀態 單位:計數 |
CoreNodesPending |
等待進行指派的核心節點數目。所有要求的核心節點可能都無法立即可用;此指標報告擱置中要求。只有在對應的執行個體群組存在時,才會報告此指標的資料點。 使用案例:監控叢集運作狀態 單位:計數 |
LiveDataNodes |
將接收來自 Hadoop 之工作的資料節點百分比。 使用案例:監控叢集運作狀態 單位:百分比 |
MRTotalNodes |
任務目前可用的節點數量 MapReduce 。等同於YARN指標 使用案例:監控叢集進度 單位:計數 |
MRActiveNodes |
目前執行 MapReduce 的任務或任務的節點數量。等同於YARN指標 使用案例:監控叢集進度 單位:計數 |
MRLostNodes |
配置到 MapReduce 的節點數量已標記為 LOST 狀態。等同於YARN指標 使用案例:監控叢集運作狀態、監控叢集進度 單位:計數 |
MRUnhealthyNodes |
標記為 UNHEALTHY 狀態 MapReduce 的任務可用的節點數目。等同於YARN指標 使用案例:監控叢集進度 單位:計數 |
MRDecommissionedNodes |
配置給DECOMMISSIONED狀態已標記 MapReduce 之應用程式的節點數目。等同於YARN指標 使用案例:監控叢集運作狀態、監控叢集進度 單位:計數 |
MRRebootedNodes |
已重新啟動並標記為 REBOOTED 狀態 MapReduce 的可用節點數量。等同於YARN指標 使用案例:監控叢集運作狀態、監控叢集進度 單位:計數 |
MultiMasterInstanceGroupNodesRunning |
執行中主節點的數量。 使用案例:監控主節點故障情形和替換狀況 單位:計數 |
MultiMasterInstanceGroupNodesRunningPercentage |
超過所請求主節點執行個體計數的主節點百分比。 使用案例:監控主節點故障情形和替換狀況 單位:百分比 |
MultiMasterInstanceGroupNodesRequested |
請求的主節點數量。 使用案例:監控主節點故障情形和替換狀況 單位:計數 |
IO | |
S3BytesWritten |
寫入至 Amazon S3 的位元組數目。此指標只會彙總MapReduce 任務,不適用於 Amazon 上的其他工作負載EMR。 使用案例:分析叢集效能、監控叢集進度 單位:計數 |
S3BytesRead |
讀取自 Amazon S3 的位元組數目。此指標只會彙總MapReduce 任務,不適用於 Amazon 上的其他工作負載EMR。 使用案例:分析叢集效能、監控叢集進度 單位:計數 |
HDFSUtilization |
目前使用的HDFS儲存體百分比。 使用案例:分析叢集效能 單位:百分比 |
HDFSBytesRead |
從 讀取的位元組數HDFS。此指標只會彙總MapReduce 任務,不適用於 Amazon 上的其他工作負載EMR。 使用案例:分析叢集效能、監控叢集進度 單位:計數 |
HDFSBytesWritten |
寫入 的位元組數HDFS。此指標只會彙總MapReduce 任務,不適用於 Amazon 上的其他工作負載EMR。 使用案例:分析叢集效能、監控叢集進度 單位:計數 |
MissingBlocks |
其中HDFS沒有複本的區塊數量。這些可能是毀損區塊。 使用案例:監控叢集運作狀態 單位:計數 |
CorruptBlocks |
HDFS 報告為損毀的區塊數量。 使用案例:監控叢集運作狀態 單位:計數 |
TotalLoad |
並行資料傳送總次數。 使用案例:監控叢集運作狀態 單位:計數 |
MemoryTotalMB |
叢集中的總記憶體量。 使用案例:監控叢集進度 單位:計數 |
MemoryReservedMB |
保留記憶體數量。 使用案例:監控叢集進度 單位:計數 |
MemoryAvailableMB |
可供配置的記憶體數量。 使用案例:監控叢集進度 單位:計數 |
YARNMemoryAvailablePercentage |
可用剩餘記憶體的百分比 YARN(YARNMemoryAvailablePercentage = MemoryAvailableMB / MemoryTotalMB)。此值有助於根據YARN記憶體用量擴展叢集資源。 單位:百分比 |
MemoryAllocatedMB |
已配置給叢集的記憶體數量。 使用案例:監控叢集進度 單位:計數 |
PendingDeletionBlocks |
標記進行刪除的區塊數目。 使用案例:監控叢集進度、監控叢集運作狀態 單位:計數 |
UnderReplicatedBlocks |
需要複寫一或多次的區塊數目。 使用案例:監控叢集進度、監控叢集運作狀態 單位:計數 |
DfsPendingReplicationBlocks |
區塊複寫狀態:正在複寫的區塊、複寫要求存留期,以及失敗的複寫要求。 使用案例:監控叢集進度、監控叢集運作狀態 單位:計數 |
CapacityRemainingGB |
剩餘的HDFS磁碟容量。 使用案例:監控叢集進度、監控叢集運作狀態 單位:計數 |
下列是 Hadoop 1 指標:
指標 | 描述 |
---|---|
叢集狀態 | |
IsIdle |
指出叢集不再執行工作,但仍然處於作用中狀態並會產生費用。如果未執行任何任務,而且未執行任何工作,則會設為 1,否則設為 0。每隔五分鐘檢查一次此值,值 1 表示叢集只在檢查時為閒置狀態,而不是整個五分鐘都閒置。為了避免誤判,此值已為 1 且持續多個連續 5 分鐘檢查時,您應該發出警示。例如,如果此值已為 1 且持續 30 分鐘 (含) 以上,則您可以對此值發出警示。 使用案例:監控叢集效能 單位:布林值 |
JobsRunning |
叢集中目前正在執行的工作數目。 使用案例:監控叢集運作狀態 單位:計數 |
JobsFailed |
叢集中失敗的工作數目。 使用案例:監控叢集運作狀態 單位:計數 |
對應/降低 | |
MapTasksRunning |
每個工作的執行中對應任務數目。如果您已安裝排程器,並且有多個工作正在執行,則會產生多個圖形。 使用案例:監控叢集進度 單位:計數 |
MapTasksRemaining |
每個工作的剩餘對應任務數目。如果您已安裝排程器,並且有多個工作正在執行,則會產生多個圖形。剩餘對應任務就是未處於下列任何狀態的任務:執行中、已刪除或已完成。 使用案例:監控叢集進度 單位:計數 |
MapSlotsOpen |
未使用的對應任務容量。這計算為指定叢集的對應任務數目上限,小於目前在該叢集中執行的對應任務總數。 使用案例:分析叢集效能 單位:計數 |
RemainingMapTasksPerSlot |
剩餘對應任務總數與叢集中可用對應槽總數的比率。 使用案例:分析叢集效能 單位:比率 |
ReduceTasksRunning |
每個工作的執行中降低任務數目。如果您已安裝排程器,並且有多個工作正在執行,則會產生多個圖形。 使用案例:監控叢集進度 單位:計數 |
ReduceTasksRemaining |
每個工作的剩餘降低任務數目。如果您已安裝排程器,並且有多個工作正在執行,則會產生多個圖形。 使用案例:監控叢集進度 單位:計數 |
ReduceSlotsOpen |
未使用的降低任務容量。這計算為指定叢集的降低任務容量上限,小於目前在該叢集中執行的降低任務總數。 使用案例:分析叢集效能 單位:計數 |
節點狀態 | |
CoreNodesRunning |
運作中核心節點數目。只有在對應的執行個體群組存在時,才會報告此指標的資料點。 使用案例:監控叢集運作狀態 單位:計數 |
CoreNodesPending |
等待進行指派的核心節點數目。所有要求的核心節點可能都無法立即可用;此指標報告擱置中要求。只有在對應的執行個體群組存在時,才會報告此指標的資料點。 使用案例:監控叢集運作狀態 單位:計數 |
LiveDataNodes |
將接收來自 Hadoop 之工作的資料節點百分比。 使用案例:監控叢集運作狀態 單位:百分比 |
TaskNodesRunning |
運作中任務節點數目。只有在對應的執行個體群組存在時,才會報告此指標的資料點。 使用案例:監控叢集運作狀態 單位:計數 |
TaskNodesPending |
等待指派的任務節點數目。所有要求的任務節點可能都無法立即可用;此指標報告擱置中要求。只有在對應的執行個體群組存在時,才會報告此指標的資料點。 使用案例:監控叢集運作狀態 單位:計數 |
LiveTaskTrackers |
運作中任務追蹤器百分比。 使用案例:監控叢集運作狀態 單位:百分比 |
IO | |
S3BytesWritten |
寫入至 Amazon S3 的位元組數目。此指標只會彙總MapReduce 任務,不適用於 Amazon 上的其他工作負載EMR。 使用案例:分析叢集效能、監控叢集進度 單位:計數 |
S3BytesRead |
讀取自 Amazon S3 的位元組數目。此指標只會彙總MapReduce 任務,不適用於 Amazon 上的其他工作負載EMR。 使用案例:分析叢集效能、監控叢集進度 單位:計數 |
HDFSUtilization |
目前使用的HDFS儲存體百分比。 使用案例:分析叢集效能 單位:百分比 |
HDFSBytesRead |
從 讀取的位元組數HDFS。 使用案例:分析叢集效能、監控叢集進度 單位:計數 |
HDFSBytesWritten |
寫入 的位元組數HDFS。 使用案例:分析叢集效能、監控叢集進度 單位:計數 |
MissingBlocks |
其中HDFS沒有複本的區塊數量。這些可能是毀損區塊。 使用案例:監控叢集運作狀態 單位:計數 |
TotalLoad |
叢集 DataNodes 中所有 報告的目前讀取器和寫入器總數。 使用案例:診斷高 I/O 可能造成工作執行效能不佳的程度。執行常駐 DataNode 程式的工作者節點也必須執行映射並減少任務。隨著時間的推移,持續高 TotalLoad 值可能表示高 I/O 可能是造成效能不佳的因素。此值偶而爆增為正常現象,不一定表示發生問題。 單位:計數 |
叢集容量指標
下列指標可指出叢集的目前或目標容量。只有在啟用受管擴展或自動終止後,才能使用這些指標。
對於由執行個體機群組成的叢集,叢集容量指標會搭配 Units
測量。對於由執行個體群組組成的叢集,叢集容量指標則搭配 Nodes
或 VCPU
,根據受管擴展原則中使用的單位類型為單位進行測量。如需詳細資訊,請參閱 Amazon EMR管理指南 中的使用 EMR受管擴展。
指標 | 描述 |
---|---|
|
由受管擴展決定的叢集units/nodes/vCPUs中 的目標總數。 單位:計數 |
|
目前執行中叢集中units/nodes/vCPUs可用的總數。叢集如被要求調整大小,則在此叢集加入新執行個體或移除執行個體之後,此指標將隨之更新。 單位:計數 |
|
由受管擴展決定的叢集COREunits/nodes/vCPUs中 的目標數目。 單位:計數 |
|
目前叢集中COREunits/nodes/vCPUs執行的 數目。 單位:計數 |
|
由受管擴展決定的叢集TASKunits/nodes/vCPUs中 的目標數目。 單位:計數 |
|
目前叢集中TASKunits/nodes/vCPUs執行的 數目。 單位:計數 |
當您使用自動終止政策啟用自動終止時,Amazon 會以一分鐘的精細程度EMR發出下列指標。有些指標僅適用於 Amazon 6.4.0 版及更新EMR版本。若要進一步了解自動終止,請參閱 使用 Amazon EMR叢集清除的自動終止政策。
指標 | 描述 |
---|---|
TotalNotebookKernels |
叢集上的執行中和閒置筆記本核心的總數。 此指標僅適用於 Amazon 6.4.0 版及更新EMR版本。 |
AutoTerminationIsClusterIdle |
指出叢集是否在使用中。 0 值表示叢集正由下列其中一個元件使用:
1 值表示叢集處於閒置狀態。Amazon 會EMR檢查叢集是否持續閒置 ( |
Amazon EMR指標的維度
您可以使用下表中的任何維度來篩選 Amazon EMR資料。
維度 | 描述 |
---|---|
JobFlowId | 與叢集 ID 相同,它是叢集的唯一識別符,格式為 j-XXXXXXXXXXXXX 。按一下 Amazon EMR主控台中的叢集,尋找此值。 |