並列分散処理のサーバ環境では以下のプロセスが動作します。
インストール時は、選択した機能に応じたプロセスが自動で各サーバに配置されます。
セットアップ時は、プロセス単位に必要な設定作業があります。詳細は“5.2 データ管理機能のセットアップ”を参照してください。
プロセス名 | 役割 | 配置先 | ||
---|---|---|---|---|
マスタ | スレーブ | 開発 | ||
ResouceManager | クラスタ全体のリソースを管理します。並列分散処理アプリケーションからのリソース要求を受け付け、各スレーブサーバのNodeManagerからリソースを確保します。 | ○ | ― | ― |
NameNode | DataNodeのモニタリング、ブロックを管理します。また、ファイルシステムの維持のためのメタデータ(ファイルシステムイメージファイル、変更情報を記述した編集ログ)を管理します。 | ○ | ― | ― |
NodeManager | ローカルの利用可能なリソースを管理し、ResourceManagerから指示を受け取って、必要とするリソースをコンテナ(アプリケーション実行環境)として提供します。 | ― | ○ | ― |
DataNode | ブロック化されたデータの書き込み・読み込み処理を行います。 | ― | ○ | ― |
JornalNode | NameNodeで管理しているメタデータ(編集ログ)をローカルディスクへ書き込みます。JarnalNodeは3台以上の奇数台で動作させる必要があります。 | ○ | ― | ○ |
ZooKeeper | ResouceManager/NameNodeとのセッションを管理し、アクティブなResouceManager/NameNodeで障害発生時(セッション失効時)、スタンバイしているResouceManager/NameNodeへフェイルオーバを開始するように要求します。 | ○ | ― | ○ |
ZKFC(ZKFailoverController) | ResouceManager/NameNodeの状態を監視し、ZooKeeperとのセッションを維持します。アクティブな他のResouceManager/NameNodeに障害が発生した場合、自身が管理しているResouceManager/NameNodeのフェイルオーバを実行します。 | ○ | ― | ― |
○:配置する
―:配置しない