AWS EMR¶
スクリプトマーケットの「Guanceクラウド同期」シリーズのスクリプトパッケージを使って、クラウド監視とクラウド資産のデータをGuanceに同期します
設定¶
Func のインストール¶
Guanceの連携 - 拡張 - マネージド版 Func を有効にすることを推奨します。前提条件はすべて自動でインストールされるので、そのままスクリプトのインストールを続けてください
Func を自前でデプロイする場合はFunc を自前でデプロイを参照してください
スクリプトのインストール¶
ヒント:要件を満たす Amazon AK を事前に用意してください(簡単のため、グローバル読み取り専用権限
ReadOnlyAccessを直接付与できます)
マネージド版の有効化スクリプト¶
- Guance コンソールにログインする
- 【連携】メニューをクリックし、【クラウドアカウント管理】を選択する
- 【クラウドアカウント追加】をクリックし、【AWS】を選択して画面に必要な情報を入力する。すでにクラウドアカウント情報を設定済みの場合は、この手順は省略する
- 【テスト】をクリックし、成功したら【保存】をクリックする。テストに失敗した場合は、関連する設定情報が正しいか確認して再度テストする
- 【クラウドアカウント管理】の一覧で追加済みのクラウドアカウントを確認できるので、該当するクラウドアカウントをクリックして詳細ページに入る
- クラウドアカウント詳細ページの【連携】ボタンをクリックし、
未インストール一覧からAWS EMRを見つけて【インストール】ボタンをクリックすると、表示されるインストール画面でそのままインストールできる
手動有効化スクリプト¶
-
Func コンソールにログインし、【スクリプトマーケット】をクリックして Guance スクリプトマーケットに入り、
integration_aws_emrを検索する -
【インストール】をクリックした後、対応するパラメータとして AWS AK ID、AK Secret、アカウント名を入力する
-
【起動スクリプトをデプロイ】をクリックすると、システムが自動で
Startupスクリプトセットを作成し、対応する起動スクリプトを自動で設定する -
有効化後は「管理 / 自動トリガー設定」で対応する自動トリガー設定を確認できる。【実行】をクリックすると、定期実行を待たずにすぐ 1 回実行できる。少し待てば、実行タスクの記録と対応するログを確認できる
検証¶
- 「管理 / 自動トリガー設定」で、該当タスクに対応する自動トリガー設定が存在するか確認し、あわせてタスク記録とログを確認して異常がないかチェックする
- Guance の「インフラストラクチャ / カスタム」で資産情報が存在するか確認する
- Guance の「メトリクス」で対応する監視データがあるか確認する
メトリクス¶
Amazon CloudWatch を設定すると、既定のメトリクスセットは次のとおりです。設定によってさらに多くのメトリクスを収集できます Amazon CloudWatch メトリクスの詳細
| メトリクス | 説明 |
|---|---|
IsIdle |
クラスターがタスクの実行を停止しているが、まだアクティブで費用が発生し続けていることを示します。タスクとジョブがいずれも実行中でない場合、このメトリクスは 1 に設定され、それ以外は 0 に設定されます。システムは 5 分ごとにこの値を確認し、値が 1 であることは確認時点でクラスターがアイドル状態であることを示すだけで、5 分間ずっとアイドルであったことを意味するわけではありません。誤検知を避けるには、連続した複数回の 5 分チェックでいずれも値が 1 の場合に警告を出すべきです。たとえば、この値が 30 分以上 1 のままであれば警告を出すべきです。 使用例:クラスター性能の監視 単位:ブール値 |
ContainerAllocated |
ResourceManager によって割り当てられたコンテナ数。 使用例:クラスター進捗の監視 単位:カウント |
ContainerReserved |
予約済みコンテナ数。 使用例:クラスター進捗の監視 単位:カウント |
ContainerPending |
キュー内でまだ割り当てられていないコンテナ数。 使用例:クラスター進捗の監視 単位:カウント |
AppsCompleted |
YARN に送信され、完了したアプリケーション数。 使用例:クラスター進捗の監視 単位:カウント |
AppsFailed |
YARN に送信され、完了できなかったアプリケーション数。 使用例:クラスター進捗の監視、クラスター健全性の監視 単位:カウント |
AppsKilled |
YARN に送信され、終了したアプリケーション数。 使用例:クラスター進捗の監視、クラスター健全性の監視 単位:カウント |
AppsPending |
YARN に送信され、保留中のアプリケーション数。 使用例:クラスター進捗の監視 単位:カウント |
AppsRunning |
YARN に送信され、実行中のアプリケーション数。 使用例:クラスター進捗の監視 単位:カウント |
AppsSubmitted |
YARN に送信されたアプリケーション数。 使用例:クラスター進捗の監視 単位:カウント |
CoreNodesRunning |
実行中のコアノード数。対応するインスタンスグループが存在する場合にのみ、このメトリクスのデータポイントが報告されます。 使用例:クラスター健全性の監視 単位:カウント |
LiveDataNodes |
Hadoop からタスクを受け取るデータノードの割合。 使用例:クラスター健全性の監視 単位:パーセント |
MRActiveNodes |
現在 MapReduce タスクまたはジョブを実行しているノード数。YARN メトリクス mapred.resourcemanager.NoOfActiveNodes と同等です。 使用例:クラスター進捗の監視 単位:カウント |
MRLostNodes |
MapReduce に割り当てられ、LOST 状態としてマークされたノード数。YARN メトリクス mapred.resourcemanager.NoOfLostNodes と同等です。 使用例:クラスター健全性の監視、クラスター進捗の監視 単位:カウント |
MRTotalNodes |
現在 MapReduce ジョブに使用可能なノード数。YARN メトリクス mapred.resourcemanager.TotalNodes と同等です。 使用例:クラスター進捗の監視 単位:カウント |
MRActiveNodes |
現在 MapReduce タスクまたはジョブを実行しているノード数。YARN メトリクス mapred.resourcemanager.NoOfActiveNodes と同等です。 使用例:クラスター進捗の監視 単位:カウント |
MRRebootedNodes |
再起動され、「再起動済み」状態としてマークされた利用可能ノード数。MapReduce における YARN メトリクス mapred.resourcemanager.NoOfRebootedNodes の相当値です。 使用例:クラスター健全性の監視、クラスター進捗の監視 単位:カウント |
MRUnhealthyNodes |
「不健全」状態としてマークされた MapReduce ジョブ用の利用可能ノード数。YARN メトリクス mapred.resourcemanager.NoOfUnhealthyNodes と同等です。 使用例:クラスター進捗の監視 単位:カウント |
MRDecommissionedNodes |
「停止済み」状態としてマークされた MapReduce アプリケーションに割り当てられたノード数。YARN メトリクス mapred.resourcemanager.NoOfDecommissionedNodes と同等です。 使用例:クラスター健全性の監視、クラスター進捗の監視 単位:カウント |
S3BytesWritten |
Amazon S3 に書き込まれたバイト数。このメトリクスは MapReduce タスクのみを集計し、Amazon EMR 上の他のワークロードには適用されません。 使用例:クラスター性能の分析、クラスター進捗の監視 単位:カウント |
S3BytesRead |
Amazon S3 から読み取られたバイト数。このメトリクスは MapReduce タスクのみを集計し、Amazon EMR 上の他のワークロードには適用されません。 使用例:クラスター性能の分析、クラスター進捗の監視 単位:カウント |
HDFSUtilization |
現在使用中の HDFS ストレージの割合。 使用例:クラスター性能の分析 単位:パーセント |
TotalLoad |
同時データ転送の総数。 使用例:クラスター健全性の監視 単位:カウント |
MemoryTotalMB |
クラスター内の総メモリ量。 使用例:クラスター進捗の監視 単位:カウント |
MemoryReservedMB |
予約済みメモリ量。 使用例:クラスター進捗の監視 単位:カウント |
HDFSBytesRead |
HDFS から読み取られたバイト数。このメトリクスは MapReduce タスクのみを集計し、Amazon EMR 上の他のワークロードには適用されません。 使用例:クラスター性能の分析、クラスター進捗の監視 単位:カウント |
HDFSBytesWritten |
HDFS に書き込まれたバイト数。このメトリクスは MapReduce タスクのみを集計し、Amazon EMR 上の他のワークロードには適用されません。 使用例:クラスター性能の分析、クラスター進捗の監視 単位:カウント |
MissingBlocks |
HDFS に複製が存在しないデータブロック数。これらのデータブロックは破損している可能性があります。 使用例:クラスター健全性の監視 単位:カウント |
MemoryAvailableMB |
割り当て可能なメモリ量。 使用例:クラスター進捗の監視 単位:カウント |
MemoryAllocatedMB |
クラスターに割り当てられたメモリ量。 使用例:クラスター進捗の監視 単位:カウント |
PendingDeletionBlocks |
削除対象としてマークされたデータブロック数。 使用例:クラスター進捗の監視、クラスター健全性の監視 単位:カウント |
UnderReplicatedBlocks |
1 回以上の複製が必要なデータブロック数。 使用例:クラスター進捗の監視、クラスター健全性の監視 単位:カウント |
DfsPendingReplicationBlocks |
|
CapacityRemainingGB |
残りの HDFS ディスク容量。 使用例:クラスター進捗の監視、クラスター健全性の監視 単位:カウント |
オブジェクト¶
収集された AWS EMR オブジェクトのデータ構造。オブジェクトデータは「インフラストラクチャ-カスタム」で確認できます
{
"measurement": "aws_emr",
"tags": {
"Id" : "xxxxx",
"ClusterName" : "xxxxx",
"ClusterArn" : "xxxx",
"RegionId" : "cn-north-1",
"OutpostArn" : "xxxx",
},
"fields": {
"Status" : "{インスタンス状態 JSON データ}",
"message" : "{インスタンス JSON データ}"
}
}
注意:
tags、fieldsの中のフィールドは、今後の更新に伴って変更される可能性があります