Amazon CloudWatch
ユーザーガイド

Amazon EMR のメトリクスおよびディメンション

Amazon EMR (Amazon EMR) は、メトリクスを CloudWatch に送信します。すべての Amazon EMR ジョブフローでは、5 分間隔でメトリクスが自動送信されます。15 か月分のメトリクスがアーカイブされ、その期間が経過すると、データは破棄されます。詳細については、Amazon EMR 開発者ガイドの「Amazon CloudWatch を使用したメトリクスのモニタリング」を参照してください。

Amazon EMR メトリクス

Amazon EMR は、以下のメトリクスを Amazon CloudWatch に送信します。

AWS/ElasticMapReduce 名前空間には、次のメトリクスが含まれます。

注記

Amazon EMR は クラスター からメトリクスを引き出します。クラスター にアクセスできなくなると、その クラスター が再度利用できるようになるまでメトリクスは報告されません。

次に示すのは Hadoop の 1 メトリクスです。

メトリクス 説明
クラスターステータス

IsIdle

クラスター は作業を行っていないが、まだ有効で課金されていることを示します。タスクもジョブも実行されていない場合は 1 に設定され、それ以外の場合は 0 に設定されます。この値は 5 分間隔で確認され、値が 1 の場合は、確認時にクラスター がアイドル状態だったことを示します。5 分間ずっとアイドル状態だったことを示すわけではありません。誤検出を避けるには、5 分ごとの確認で、複数回連続して値が 1 の場合に通知するようアラームを指定する必要があります。たとえば、30 分間にわたってこの値が 1 だった場合に通知するようアラームを指定できます。

ユースケース: クラスター のパフォーマンスを監視する

単位: ブール

JobsRunning

クラスターの、現在実行中のジョブの数。

ユースケース: クラスター の状態を監視する

単位: Count

JobsFailed

クラスターの、失敗したジョブの数。

ユースケース: クラスター の状態を監視する

単位: Count

マップ/低減

MapTasksRunning

各ジョブの実行マップタスクの数。スケジューラーがインストールされ、複数のジョブが実行中の場合は、複数のグラフが生成されます。

ユースケース: クラスター の進捗状況を監視する

単位: Count

MapTasksRemaining

各ジョブの残存マップタスクの数。スケジューラーがインストールされ、複数のジョブが実行中の場合は、複数のグラフが生成されます。残存マップタスクとは、実行中、強制終了済み、完了済み以外の状態のものをいいます。

ユースケース: クラスター の進捗状況を監視する

単位: Count

MapSlotsOpen

未使用のマップタスクの容量。指定されたクラスターのマップタスクの最大数から、そのクラスターで現在実行中のマップタスクの合計数を差し引いて算出します。

ユースケース: クラスター のパフォーマンスを分析する

単位: Count

RemainingMapTasksPerSlot

合計残存マップタスク数と、クラスター内で使用できる合計マップスロット数の比率。

ユースケース: クラスター のパフォーマンスを分析する

単位: Ratio

ReduceTasksRunning

各ジョブの実行削減タスクの数。スケジューラーがインストールされ、複数のジョブが実行中の場合は、複数のグラフが生成されます。

ユースケース: クラスター の進捗状況を監視する

単位: Count

ReduceTasksRemaining

各ジョブの残存削減タスクの数。スケジューラーがインストールされ、複数のジョブが実行中の場合は、複数のグラフが生成されます。

ユースケース: クラスター の進捗状況を監視する

単位: Count

ReduceSlotsOpen

未使用の削減タスクの容量。指定されたクラスターの削減タスクの最大キャパシティから、そのクラスターで現在実行中の削減タスクの数を差し引いて算出します。

ユースケース: クラスター のパフォーマンスを分析する

単位: Count

ノードのステータス

CoreNodesRunning

動作中のコアノードの数。このメトリクスのデータポイントは、対応するインスタンスグループが存在する場合にのみ報告されます。

ユースケース: クラスター の状態を監視する

単位: Count

CoreNodesPending

割り当て待機中のコアノードの数。リクエストされたすべてのコアノードが直ちに使用可能になるとは限りません。このメトリクスでは、保留中のリクエストを報告します。このメトリクスのデータポイントは、対応するインスタンスグループが存在する場合にのみ報告されます。

ユースケース: クラスター の状態を監視する

単位: Count

LiveDataNodes

Hadoop から処理を受け取るデータノードの割合。

ユースケース: クラスター の状態を監視する

単位: Percent

TaskNodesRunning

動作中のタスクノードの数。このメトリクスのデータポイントは、対応するインスタンスグループが存在する場合にのみ報告されます。

ユースケース: クラスター の状態を監視する

単位: Count

TaskNodesPending

割り当て待機中のコアノードの数。リクエストされたすべてのタスクノードが直ちに使用可能になるとは限りません。このメトリクスでは、保留中のリクエストを報告します。このメトリクスのデータポイントは、対応するインスタンスグループが存在する場合にのみ報告されます。

ユースケース: クラスター の状態を監視する

単位: Count

LiveTaskTrackers

機能しているタスクトラッカーの割合。

ユースケース: クラスター の状態を監視する

単位: Percent

IO

S3BytesWritten

Amazon S3 への書き込みバイト数。このメトリクスでは MapReduce ジョブのみが集計され、EMR の他のワークロードには適用されません。

ユースケース: クラスター のパフォーマンスを分析し、クラスター の進捗状況を監視する

単位: Count

S3BytesRead

Amazon S3 からの読み込みバイト数。このメトリクスでは MapReduce ジョブのみが集計され、EMR の他のワークロードには適用されません。

ユースケース: クラスター のパフォーマンスを分析し、クラスター の進捗状況を監視する

単位: Count

HDFSUtilization

現在使用されている HDFS ストレージの割合。

ユースケース: クラスター のパフォーマンスを分析する

単位: Percent

HDFSBytesRead

HDFS からの読み込みバイト数。

ユースケース: クラスター のパフォーマンスを分析し、クラスター の進捗状況を監視する

単位: Bytes

HDFSBytesWritten

HDFS への書き込みバイト数。

ユースケース: クラスター のパフォーマンスを分析し、クラスター の進捗状況を監視する

単位: Bytes

MissingBlocks

HDFS にレプリカがないブロックの数。これらのブロックは破損している可能性があります。

ユースケース: クラスター の状態を監視する

単位: Count

TotalLoad

クラスタ内のすべての DataNode によって報告されたリーダーとライターの現在の合計数。

ユースケース: 高い I/O がジョブ実行パフォーマンスの低下につながる可能性の度合いを診断します。DataNode デーモンを実行しているワーカーノードは、Map タスクと Reduce タスクも実行する必要があります。長い時間が経過しても TotalLoad 値が永続的に高い場合は、高い I/O がパフォーマンス低下の原因となる可能性があることを示します。この値の一時的なスパイクは一般的なものであり、通常問題を示すものではありません。

単位: Count

HBase

BackupFailed

前回のバックアップに失敗したかどうか。デフォルトでは 0 に設定されており、前回のバックアップが失敗した場合は 1 に更新されます。このメトリクスは、HBase クラスター についてのみ報告されます。

ユースケース: HBase バックアップを監視する

単位: Count

MostRecentBackupDuration

前回のバックアップが完了するのにかかった時間。このメトリクスは、前回完了したバックアップが成功したか失敗したかに関係なく設定され、このメトリクスは、バックアップの進行中に、バックアップが開始してからの分数を返します。このメトリクスは、HBase クラスター についてのみ報告されます。

ユースケース: HBase バックアップを監視する

単位: Minutes

TimeSinceLastSuccessfulBackup

クラスターで前回成功した HBase バックアップが開始してから経過した分数。このメトリクスは、HBase クラスター についてのみ報告されます。

ユースケース: HBase バックアップを監視する

単位: Minutes

次のメトリクスは、Hadoop 2 AMI で使用できます。

メトリクス 説明
クラスターステータス

IsIdle

クラスター は作業を行っていないが、まだ有効で課金されていることを示します。タスクもジョブも実行されていない場合は 1 に設定され、それ以外の場合は 0 に設定されます。この値は 5 分間隔で確認され、値が 1 の場合は、確認時にクラスター がアイドル状態だったことを示します。5 分間ずっとアイドル状態だったことを示すわけではありません。誤検出を避けるには、5 分ごとの確認で、複数回連続して値が 1 の場合に通知するようアラームを指定する必要があります。たとえば、30 分間にわたってこの値が 1 だった場合に通知するようアラームを指定できます。

ユースケース: クラスター のパフォーマンスを監視する

単位: ブール

ContainerAllocated

ResourceManager によって割り当てられるリソース コンテナの数。

ユースケース: クラスター の進捗状況を監視する

単位: Count

ContainerReserved

予約されているコンテナの数。

ユースケース: クラスター の進捗状況を監視する

単位: Count

ContainerPending

キュー内にあり、まだ割り当てられていないコンテナの数。

ユースケース: クラスター の進捗状況を監視する

単位: Count

ContainerPendingRatio

割り当てられたコンテナに対する保留中のコンテナの比率 (ContainerPendingRatio = ContainerPending/ContainerAllocated)。ContainerAllocated = 0 の場合は、ContainerPendingRatio = ContainerPending になります。ContainerPendingRatio の値は、割合 (%) ではなく数値を表します。この値は、コンテナ割り当て動作に基づくクラスターリソースのスケーリングに役立ちます。

単位: Count

AppsCompleted

YARN に送信され、完了したアプリケーションの数。

ユースケース: クラスター の進捗状況を監視する

単位: Count

AppsFailed

YARN に送信され、完了できなかったアプリケーションの数。

ユースケース: クラスター の進捗状況を監視し、クラスター の状態を監視する

単位: Count

AppsKilled

YARN に送信され、強制終了されたアプリケーションの数。

ユースケース: クラスター の進捗状況を監視し、クラスター の状態を監視する

単位: Count

AppsPending

YARN に送信され、保留状態になっているアプリケーションの数。

ユースケース: クラスター の進捗状況を監視する

単位: Count

AppsRunning

YARN に送信され、実行中であるアプリケーションの数。

ユースケース: クラスター の進捗状況を監視する

単位: Count

AppsSubmitted

YARN に送信されたアプリケーションの数。

ユースケース: クラスター の進捗状況を監視する

単位: Count

ノードのステータス

CoreNodesRunning

動作中のコアノードの数。このメトリクスのデータポイントは、対応するインスタンスグループが存在する場合にのみ報告されます。

ユースケース: クラスター の状態を監視する

単位: Count

CoreNodesPending

割り当て待機中のコアノードの数。リクエストされたすべてのコアノードが直ちに使用可能になるとは限りません。このメトリクスでは、保留中のリクエストを報告します。このメトリクスのデータポイントは、対応するインスタンスグループが存在する場合にのみ報告されます。

ユースケース: クラスター の状態を監視する

単位: Count

LiveDataNodes

Hadoop から処理を受け取るデータノードの割合。

ユースケース: クラスター の状態を監視する

単位: Percent

MRTotalNodes

MapReduce ジョブで現在使用できるノードの数。YARN メトリクス mapred.resourcemanager.TotalNodes と同等。

ユースケース: クラスター の進捗状況を監視する

単位: Count

MRActiveNodes

MapReduce のタスクまたはジョブを現在実行しているノードの数。YARN メトリクス mapred.resourcemanager.NoOfActiveNodes と同等。

ユースケース: クラスター の進捗状況を監視する

単位: Count

MRLostNodes

MapReduce に割り当てられており、LOST 状態としてマークされているノードの数。YARN メトリクス mapred.resourcemanager.NoOfLostNodes と同等。

ユースケース: クラスター の状態を監視し、クラスター の進捗状況を監視する

単位: Count

MRUnhealthyNodes

MapReduce ジョブで使用でき、UNHEALTHY 状態としてマークされているノードの数。YARN メトリクス mapred.resourcemanager.NoOfUnhealthyNodes と同等。

ユースケース: クラスター の進捗状況を監視する

単位: Count

MRDecommissionedNodes

MapReduce アプリケーションに割り当てられており、DECOMMISSIONED 状態としてマークされているノードの数。YARN メトリクス mapred.resourcemanager.NoOfDecommissionedNodes と同等。

ユースケース: クラスター の状態を監視し、クラスター の進捗状況を監視する

単位: Count

MRRebootedNodes

MapReduce で使用でき、再起動され REBOOTED 状態としてマークされているノードの数。YARN メトリクス mapred.resourcemanager.NoOfRebootedNodes と同等。

ユースケース: クラスター の状態を監視し、クラスター の進捗状況を監視する

単位: Count

IO

S3BytesWritten

Amazon S3 への書き込みバイト数。

ユースケース: クラスター のパフォーマンスを分析し、クラスター の進捗状況を監視する

単位: Count

S3BytesRead

Amazon S3 からの読み込みバイト数。

ユースケース: クラスター のパフォーマンスを分析し、クラスター の進捗状況を監視する

単位: Count

HDFSUtilization

現在使用されている HDFS ストレージの割合。

ユースケース: クラスター のパフォーマンスを分析する

単位: Percent

HDFSBytesRead

HDFS からの読み込みバイト数。このメトリクスでは MapReduce ジョブのみが集計され、EMR の他のワークロードには適用されません。

ユースケース: クラスター のパフォーマンスを分析し、クラスター の進捗状況を監視する

単位: Count

HDFSBytesWritten

HDFS への書き込みバイト数。このメトリクスでは MapReduce ジョブのみが集計され、EMR の他のワークロードには適用されません。

ユースケース: クラスター のパフォーマンスを分析し、クラスター の進捗状況を監視する

単位: Count

MissingBlocks

HDFS にレプリカがないブロックの数。これらのブロックは破損している可能性があります。

ユースケース: クラスター の状態を監視する

単位: Count

CorruptBlocks

HDFS が破損しているものと報告するブロックの数。

ユースケース: クラスター の状態を監視する

単位: Count

TotalLoad

同時データ転送数の合計。

ユースケース: クラスター の状態を監視する

単位: Count

MemoryTotalMBMemoryTotalMB

クラスターでのメモリの合計量。

ユースケース: クラスター の進捗状況を監視する

単位: Bytes

MemoryReservedMB

予約されているメモリの量。

ユースケース: クラスター の進捗状況を監視する

単位: Bytes

MemoryAvailableMB

割り当てに使用できるメモリの量。

ユースケース: クラスター の進捗状況を監視する

単位: Bytes

YARNMemoryAvailablePercentage

YARN に対する利用可能な残りのメモリの割合 (YARNMemoryAvailablePercentage = MemoryAvailableMB / MemoryTotalMB)。この値は、YARN のメモリの使用状況に基づくクラスターリソースのスケーリングに役立ちます。

MemoryAllocatedMB

クラスターに割り当てられているメモリの量。

ユースケース: クラスター の進捗状況を監視する

単位: Bytes

PendingDeletionBlocks

削除用にマークされているブロックの数。

ユースケース: クラスター の進捗状況を監視し、クラスター の状態を監視する

単位: Count

UnderReplicatedBlocks

1 回以上レプリケートする必要があるブロックの数。

ユースケース: クラスター の進捗状況を監視し、クラスター の状態を監視する

単位: Count

DfsPendingReplicationBlocks

ブロックレプリケーションのステータス: レプリケーション中のブロック、レプリケーションリクエストの有効期間、および成功しなかったレプリケーションリクエスト。

ユースケース: クラスター の進捗状況を監視し、クラスター の状態を監視する

単位: Count

CapacityRemainingGB

残りの HDFS ディスク容量の合計。

ユースケース: クラスター の進捗状況を監視し、クラスター の状態を監視する

単位: Bytes

HBase

H ベースのバックアップに失敗

前回のバックアップに失敗したかどうか。デフォルトでは 0 に設定されており、前回のバックアップが失敗した場合は 1 に更新されます。このメトリクスは、HBase クラスター についてのみ報告されます。

ユースケース: HBase バックアップを監視する

単位: Count

MostRecentBackupDuration

前回のバックアップが完了するのにかかった時間。このメトリクスは、前回完了したバックアップが成功したか失敗したかに関係なく設定され、このメトリクスは、バックアップの進行中に、バックアップが開始してからの分数を返します。このメトリクスは、HBase クラスター についてのみ報告されます。

ユースケース: HBase バックアップを監視する

単位: Minutes

TimeSinceLastSuccessfulBackup

クラスターで前回成功した HBase バックアップが開始してから経過した分数。このメトリクスは、HBase クラスター についてのみ報告されます。

ユースケース: HBase バックアップを監視する

単位: Minutes

Amazon EMR ディメンション

Amazon EMR では以下のディメンションが利用可能です。

ディメンション 説明
JobFlowId クラスター別の識別子 (j-XXXXXXXXXXXXX 形式) である クラスター ID と同じです。この値を見つけるには、Amazon EMR コンソールで クラスター をクリックします。
JobId クラスター 内のジョブの識別子。この識別子を使用して クラスター から返されたメトリクスをフィルタ処理し、クラスター 内の 1 つのジョブに適用されるメトリクスに絞り込みます。JobId では、job_XXXXXXXXXXXX_XXXX という書式が使用されます。