Hadoop YARN サービスの起動と停止方法

HadoopBeginner
オンラインで実践に進む

はじめに

Hadoop YARN (Yet Another Resource Negotiator) は、Hadoop エコシステムの重要なコンポーネントであり、Hadoop クラスタ内のリソースの管理と割り当てを担当します。このチュートリアルでは、Hadoop YARN サービスの起動と停止の手順を案内し、Hadoop クラスタがスムーズに動作するようにします。

Hadoop YARN の概要

Hadoop YARN (Yet Another Resource Negotiator) は、Apache Hadoop エコシステムのリソース管理およびジョブスケジューリングのコンポーネントです。これは、以前の MapReduce 1.0 (MRv1 とも呼ばれる) フレームワークの制限を解消するために Hadoop 2.0 で導入されました。

YARN は、Hadoop クラスタのコンピュートリソース (CPU、メモリ、ストレージなど) を管理し、それらのリソース上でユーザーアプリケーションの実行をスケジューリングする責任があります。MapReduce 1.0 のモノリシックな設計と比較して、より柔軟で拡張性の高いアーキテクチャを提供します。

Hadoop YARN の主要コンポーネント

Hadoop YARN の主なコンポーネントは次のとおりです。

  1. Resource Manager (RM):クラスタのリソースを管理し、アプリケーションをスケジューリングする中央の権限機関です。
  2. Node Manager (NM):クラスタ内の各ノードで実行されるエージェントで、コンテナの起動と監視、およびリソースの使用状況とステータスを Resource Manager に報告する責任があります。
  3. Application Master (AM):アプリケーションごとのフレームワークで、Resource Manager からリソースを交渉し、Node Manager と協力してアプリケーションのタスクを実行および監視する責任があります。
  4. Container:YARN での基本的な実行単位で、CPU、メモリ、ディスクなどのリソースをカプセル化します。
graph TD A[Resource Manager] --> B[Node Manager] A --> C[Application Master] B --> D[Container]

YARN アプリケーションの実行ワークフロー

YARN アプリケーションを実行する典型的なワークフローは次のとおりです。

  1. クライアントがアプリケーションを Resource Manager に送信します。
  2. Resource Manager が必要なリソースを割り当て、Application Master を起動します。
  3. Application Master が Resource Manager から追加のリソースを交渉し、Node Manager 上のコンテナでアプリケーションのタスクを起動します。
  4. Node Manager がコンテナを監視し、そのステータスを Application Master と Resource Manager に報告します。
  5. 完了すると、Application Master がアプリケーションの最終ステータスを Resource Manager に報告します。

リソース管理とジョブスケジューリングの関心事を実際のデータ処理から分離することで、YARN は Hadoop クラスタ上で大規模な分散アプリケーションを実行するためのより拡張性が高く耐障害性のあるアーキテクチャを提供します。

Hadoop YARN サービスの起動

Hadoop YARN サービスを起動するには、Hadoop クラスタが適切に構成され、必要なデーモンが実行されていることを確認する必要があります。

前提条件

  1. システムに Hadoop をインストールします。How to Install Hadoop on Ubuntu 22.04 の LabEx ガイドに従うことができます。
  2. Hadoop の設定ファイル (例: core-site.xmlhdfs-site.xmlyarn-site.xml) が適切に設定されていることを確認します。

YARN サービスの起動

  1. HDFS サービス (NameNode と DataNode) がまだ実行されていない場合は、起動します。
sudo /usr/local/hadoop/sbin/start-dfs.sh
  1. YARN サービス (Resource Manager と Node Manager) を起動します。
sudo /usr/local/hadoop/sbin/start-yarn.sh
  1. YARN サービスの状態を確認します。
sudo /usr/local/hadoop/bin/yarn node -list

このコマンドは、すべてのアクティブな Node Manager とそのリソース使用状況を一覧表示します。

  1. YARN の Web UI にアクセスします。
    • Resource Manager UI: http://<resource-manager-host>:8088
    • Node Manager UI: http://<node-manager-host>:8042

これらの Web インターフェイスは、リソースの使用率、実行中のアプリケーションなど、YARN クラスタの視覚的な概要を提供します。

これらの手順に従うことで、Hadoop YARN サービスを正常に起動し、クラスタを分散アプリケーションの実行に備えることができます。

Hadoop YARN サービスの停止

Hadoop YARN サービスをシャットダウンする必要がある場合、以下の手順に従って YARN コンポーネントを正常に停止することができます。

YARN サービスの停止

  1. YARN Node Manager を停止します。
sudo /usr/local/hadoop/sbin/stop-yarn.sh

このコマンドは、クラスタノード上で実行されているすべての Node Manager デーモンを停止します。

  1. YARN Resource Manager を停止します。
sudo /usr/local/hadoop/bin/yarn rmadmin -shutdownRM

このコマンドは、Resource Manager デーモンを正常にシャットダウンします。

HDFS サービスの停止

YARN サービスを停止した後、必要に応じて HDFS サービス (NameNode と DataNode) も停止することができます。

sudo /usr/local/hadoop/sbin/stop-dfs.sh

このコマンドは、クラスタ上で実行されている HDFS デーモンを停止します。

シャットダウンの確認

プロセスの状態を確認することで、YARN および HDFS サービスのシャットダウンを確認することができます。

sudo jps

このコマンドは、システム上で実行されているすべての Java プロセスを一覧表示します。サービスを停止した後は、Hadoop に関連するプロセスが表示されないはずです。

これらの手順に従うことで、Hadoop YARN サービスを正常に停止し、必要に応じて HDFS サービスも停止することができます。これは、メンテナンスを行う場合、クラスタをアップグレードする場合、または何らかの理由でシステムをシャットダウンする場合に役立ちます。

まとめ

このチュートリアルでは、Hadoop YARN サービスを管理するための包括的なガイドを提供し、これらのサービスを効果的に起動および停止する手順をカバーしています。Hadoop YARN のライフサイクルを制御する方法を理解することで、Hadoop クラスタの最適なパフォーマンスと信頼性を確保し、データ処理のニーズにとって貴重なリソースにすることができます。