を使用した Amazon EMRメトリクスのモニタリング CloudWatch - Amazon EMR

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

を使用した Amazon EMRメトリクスのモニタリング CloudWatch

メトリクスは 5 分ごとに更新され、Amazon EMRクラスター CloudWatch ごとに自動的に収集され、 にプッシュされます。この間隔は設定できません。で報告された Amazon EMRメトリクスには料金はかかりません CloudWatch。これらの 5 分のデータポイントメトリクスは 63 日間アーカイブされ、その期間が経過したデータは破棄されます。

Amazon EMRメトリクスの使用方法

次の表は、Amazon によってレポートされるメトリクスの一般的な用途を示していますEMR。ここで紹介するのは使用開始するための提案事項であり、総括的な一覧ではありません。Amazon によってレポートされるメトリクスの完全なリストについてはEMR、「」を参照してくださいEMR で Amazon によってレポートされるメトリクス CloudWatch

どうすればよいか? 関連するメトリクス
クラスターの進行を追跡する RunningMapTasksRemainingMapTasksRunningReduceTasks、および RemainingReduceTasks メトリクスを確認します。
アイドル状態のクラスターを検出する IsIdle メトリクスは、クラスターが現在実行されていないライブのタスクかどうかを追跡します。クラスターのアイドル状態の時間が指定した長さ(たとえば、30 分)に達した場合に通知されるようアラームを設定できます。
ノードのストレージがいつ使い果たされるかを検出する MRUnhealthyNodes メトリクスは、1 つ以上のコアノードまたはタスクノードがローカルディスクストレージを使い果たし、 UNHEALTHYYARN状態に移行するタイミングを追跡します。例えば、コアノードやタスクノードのディスク容量が少ないと、タスクを実行できなくなります。
クラスターのストレージがいつ使い果たされるかを検出する HDFSUtilization メトリクスはクラスターの合計HDFS容量をモニタリングし、コアノードをさらに追加するためにクラスターのサイズ変更が必要になる場合があります。例えば、HDFS使用率が高いため、ジョブやクラスターの状態に影響する可能性があります。
クラスターが低容量で稼働している場合に検出する MRLostNodes メトリクスは、1 つ以上のコアノードまたはタスクノードがマスターノードと通信できなくなった状態を追跡します。例えば、マスターノードがコアノードまたはタスクノードにアクセスできない場合です。

詳細については、クラスターは NO_SLAVE_ LEFTとコアノード FAILED_BY_ で終了しますMASTER「」およびAWSSupport「-AnalyzeEMRLogs」を参照してください。

Amazon のアクセス CloudWatch メトリクス EMR

Amazon コンソールまたは EMRコンソール CloudWatch を使用して、Amazon がEMRレポートするメトリクスを表示できますCloudWatch 。コマンドmon-get-statsまたは を使用して CloudWatch CLIメトリクスを取得することもできますCloudWatch GetMetricStatisticsAPI。EMR を使用した Amazon のメトリクスの表示または取得の詳細については CloudWatch、「Amazon CloudWatch ユーザーガイド」を参照してください。

Console
コンソールでメトリクスを表示するには
  1. にサインインする AWS Management Consoleで、https://console.aws.amazon.com/emr で Amazon EMRコンソールを開きます。

  2. 左側のナビゲーションペインの EMRでEC2クラスター を選択し、メトリクスを表示するクラスターを選択します。選択すると、クラスターの詳細ページが開きます。

  3. クラスターの詳細ページの [モニタリング] タブを選択します。[クラスターステータス][ノードのステータス] または [入力と出力] オプションのいずれか 1 つを選択して、クラスターの進行状況と状態に関するレポートをロードします。

  4. 表示するメトリクスを選択したら、各グラフを拡大します。グラフの時間枠を絞り込むには、あらかじめ入力されているオプションを選択するか、[カスタム] を選択します。

EMR で Amazon によってレポートされるメトリクス CloudWatch

次の表は、コンソールで Amazon がEMRレポートし、 にプッシュするメトリクスの一覧ですCloudWatch。

Amazon EMRメトリクス

Amazon EMRは、複数のメトリクスのデータを に送信します CloudWatch。すべての Amazon EMRクラスターは、5 分間隔でメトリクスを自動的に送信します。2 週間分のメトリクスがアーカイブされ、その期間が経過したデータは破棄されます。

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

注記

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

次のメトリクスは、Hadoop 2.x バージョンを実行しているクラスターで使用できます。

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

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 から処理を受け取るデータノードの割合。

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

単位: パーセント

MRTotalNodes

MapReduce ジョブで現在使用可能なノードの数。YARN メトリクス に相当しますmapred.resourcemanager.TotalNodes

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

単位: Count

MRActiveNodes

現在実行中の MapReduce タスクまたはジョブのノード数。YARN メトリクス に相当しますmapred.resourcemanager.NoOfActiveNodes

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

単位: Count

MRLostNodes

LOST 状態としてマーク MapReduce された に割り当てられたノードの数。YARN メトリクス に相当しますmapred.resourcemanager.NoOfLostNodes

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

単位: Count

MRUnhealthyNodes

UNHEALTHY 状態でマークされた MapReduce ジョブで使用できるノードの数。YARN メトリクス に相当しますmapred.resourcemanager.NoOfUnhealthyNodes

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

単位: Count

MRDecommissionedNodes

DECOMMISSIONED 状態でマークされた MapReduce アプリケーションに割り当てられたノードの数。YARN メトリクス に相当しますmapred.resourcemanager.NoOfDecommissionedNodes

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

単位: Count

MRRebootedNodes

再起動 MapReduce され、 REBOOTED状態でマークされた で使用可能なノードの数。YARN メトリクス に相当しますmapred.resourcemanager.NoOfRebootedNodes

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

単位: Count

MultiMasterInstanceGroupNodesRunning

実行中のマスターノードの数。

ユースケース: マスターノードの障害のモニタリングと置換

単位: Count

MultiMasterInstanceGroupNodesRunningPercentage

リクエストされたマスターノードインスタンス数で実行中のマスターノードの割合

ユースケース: マスターノードの障害のモニタリングと置換

単位: パーセント

MultiMasterInstanceGroupNodesRequested

リクエストされたマスターノードの数。

ユースケース: マスターノードの障害のモニタリングと置換

単位: Count

IO

S3BytesWritten

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

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

単位: Count

S3BytesRead

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

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

単位: Count

HDFSUtilization

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

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

単位: パーセント

HDFSBytesRead

から読み取られたバイト数HDFS。このメトリクスはMapReduce ジョブのみを集約し、Amazon の他のワークロードには適用されませんEMR。

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

単位: Count

HDFSBytesWritten

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

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

単位: Count

MissingBlocks

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

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

単位: Count

CorruptBlocks

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

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

単位: Count

TotalLoad

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

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

単位: Count

MemoryTotalMB

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

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

単位: Count

MemoryReservedMB

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

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

単位: Count

MemoryAvailableMB

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

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

単位: Count

YARNMemoryAvailablePercentage

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

単位: パーセント

MemoryAllocatedMB

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

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

単位: Count

PendingDeletionBlocks

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

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

単位: Count

UnderReplicatedBlocks

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

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

単位: Count

DfsPendingReplicationBlocks

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

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

単位: Count

CapacityRemainingGB

残りのHDFSディスク容量。

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

単位: Count

次に示すのは 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 から処理を受け取るデータノードの割合。

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

単位: パーセント

TaskNodesRunning

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

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

単位: Count

TaskNodesPending

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

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

単位: Count

LiveTaskTrackers

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

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

単位: パーセント

IO

S3BytesWritten

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

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

単位: Count

S3BytesRead

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

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

単位: Count

HDFSUtilization

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

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

単位: パーセント

HDFSBytesRead

から読み取られたバイト数HDFS。

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

単位: Count

HDFSBytesWritten

に書き込まれたバイト数HDFS。

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

単位: Count

MissingBlocks

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

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

単位: Count

TotalLoad

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

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

単位: Count

クラスター容量メトリクス

次のメトリクスは、クラスターの現在の容量またはターゲットの容量を示します。これらのメトリクスは、マネージドスケーリングまたは自動終了が有効になっているときにのみ使用できます。

インスタンスフリートで構成されるクラスターの場合、クラスター容量のメトリクスは Units 単位で測定されます。インスタンスグループで構成されるクラスターの場合、クラスター容量のメトリクスは、マネージドスケーリングポリシーで使用される単位タイプに基づき、Nodes 単位または VCPU 単位で測定されます。詳細については、「Amazon EMR管理ガイド」のEMR「 マネージドスケーリングの使用」を参照してください。

メトリクス 説明
  • TotalUnitsRequested

  • TotalNodesRequested

  • TotalVCPURequested

マネージドスケーリングによって決定される、クラスターvCPUs 内のユニット/ノード/ターゲットの合計数。

単位: Count

  • TotalUnitsRunning

  • TotalNodesRunning

  • TotalVCPURunning

実行中のクラスターでvCPUs 使用可能なユニット/ノード/ の現在の合計数。クラスターのサイズ変更がリクエストされると、クラスターに新しいインスタンスが追加または削除された後に、このメトリクスが更新されます。

単位: Count

  • CoreUnitsRequested

  • CoreNodesRequested

  • CoreVCPURequested

マネージドスケーリングによって決定されるクラスターvCPUs 内のCOREユニット/ノード/ターゲット数。

単位: Count

  • CoreUnitsRunning

  • CoreNodesRunning

  • CoreVCPURunning

クラスターでvCPUs 実行されている現在のCOREユニット/ノード数。

単位: Count

  • TaskUnitsRequested

  • TaskNodesRequested

  • TaskVCPURequested

マネージドスケーリングによって決定されるクラスターvCPUs 内のTASKユニット/ノード/ターゲット数。

単位: Count

  • TaskUnitsRunning

  • TaskNodesRunning

  • TaskVCPURunning

クラスターでvCPUs 実行されている現在のTASKユニット/ノード数。

単位: Count

Amazon EMR は、自動終了ポリシーを使用して自動終了を有効にすると、次のメトリクスを 1 分単位で出力します。一部のメトリクスは、Amazon EMRバージョン 6.4.0 以降でのみ使用できます。自動終了の詳細については、「クラスターのクリーンアップに自動終了ポリシーを使用する」を参照してください。

メトリクス 説明
TotalNotebookKernels クラスターで実行中とアイドル状態のノートブックカーネルの合計数。

このメトリクスは、Amazon EMRバージョン 6.4.0 以降でのみ使用できます。

AutoTerminationIsClusterIdle クラスターが使用中かどうかを示します。

0 は、クラスターが次のコンポーネントのいずれかによってアクティブに使用されていることを示します。

  • YARN アプリケーション

  • HDFS

  • ノートブック

  • Spark History Server などのクラスター上の UI

1 は、クラスターがアイドル状態であることを示します。Amazon は、クラスターの継続的なアイドル状態 (AutoTerminationIsClusterIdle = 1) EMRをチェックします。クラスターのアイドル時間が自動終了ポリシーIdleTimeoutの値と等しい場合、Amazon はクラスターをEMR終了します。

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

Amazon EMR データは、次の表のいずれかのディメンションを使用してフィルタリングできます。

ディメンション 説明
JobFlowId クラスター ID と同一で、j-XXXXXXXXXXXXX という形式のクラスターの一意の識別子です。Amazon EMRコンソールでクラスターをクリックして、この値を見つけます。