YARN は分散リソース管理システムであり、Hadoop のコアコンポーネントです。クラスターリソースを管理し、ジョブをスケジューリングし、タスクを監視します。
用語
|
名前 |
説明 |
|
ResourceManager |
クラスターリソースを管理およびスケジューリングし、YARN 上で実行されるジョブにリソースを割り当てます。 非 HA クラスターでは、ResourceManager は E-MapReduce (EMR) のマスターノードにデプロイされます。HA クラスターでは、高可用性を実現するために複数のマスターノードにデプロイされます。 |
|
NodeManager |
各ノードのリソースを管理し、ステータスを監視し、ジョブを実行します。 EMR クラスターのコアノードまたはタスクノードにデプロイされます。 |
|
MapReduce History Server (MRHistoryServer) |
MapReduce ジョブのメトリクスを解析し、ジョブの実行ステータスを表示します。 また、期限切れの集約ログを定期的に削除します。 |
|
TimelineServer |
ジョブのメトリクスを収集し、ジョブの実行ステータスを表示します。 説明
TimelineServer は個々のジョブのリソース使用状況のみを監視します。データジョブの開発、実行、または送信には影響しません。 |
|
WebAppProxyServer |
ジョブリンクをリダイレクトして、Web ベースの攻撃を軽減します。 |
|
ApplicationMaster |
アプリケーションのライフサイクルを管理します。 ApplicationMaster は ResourceManager とリソースをネゴシエートし、NodeManager と連携してタスクを実行および監視します。 |
メリット
EMR の YARN には、次のメリットがあります:
-
HA クラスターでは、YARN が高可用性モードで自動的にデプロイされます。
-
運用保守 (O&M) を簡素化します。
コンソールは、ノードのスケールアウト、NodeManager のシャットダウン、ローリング再起動をサポートしています。
-
モニタリングとアラートをサポートしています。
さまざまなメトリクスを監視し、インテリジェントアラートを設定できます。
-
Auto Scaling はグレースフルシャットダウンをサポートしています。
ノードは、実行中のタスクが完了するまでオフラインにならないため、NodeManager の即時シャットダウンによるタスクの失敗や再実行を防ぐことができます。