Namenodeの高可用性を設定する方法-パート5


Hadoopには、HDFSとYARNの2つのコアコンポーネントがあります。 HDFSはデータを保存するためのものであり、YARNはデータを処理するためのものです。 HDFSはHadoop分散ファイルシステムであり、マスターサービスとしてNamenodeを、スレーブサービスとしてDatanodeを備えています。

Namenodeは、HDFSに保存されているデータのメタデータを保存しているHadoopの重要なコンポーネントです。 Namenodeがダウンすると、クラスター全体にアクセスできなくなり、単一障害点(SPOF)になります。そのため、本番環境では、マシンのクラッシュや計画的なメンテナンスアクティビティなどのさまざまな理由で、1つのNamenodeがダウンした場合に本番の停止を回避するために、Namenodeの高可用性が提供されます。

Hadoop 2.xは、2つのNamenodeを持つことができる実現可能性を提供します。1つはActive Namenodeになり、もう1つはStandbyNamenodeになります。

  • Active Namenode – It manages all client operations.
  • Standby Namenode – It is redundant of Active Namenode. If Active NN goes down, then Standby NN will take all the responsibility of Active NN.

Namenodeの高可用性を有効にするには、自動フェイルオーバーに必須のZookeeperが必要です。 ZKFC(Zookeeperフェイルオーバーコントローラー)は、Namenodeの状態を維持するために使用されるZookeeperクライアントです。

この記事では、ClouderaManagerでNamenode高可用性を有効にします。

ステップ1:Zookeeperのインストール

1. ClouderaManagerにログインします。

http://Your-IP:7180/cmf/home

2.クラスター(tecmint)アクションプロンプトで、[サービスの追加]を選択します。

3.サービス「Zookeeper」を選択します。

4.Zookeeperをインストールするサーバーを選択します。

5. ZookeeperQuorumを形成するために3人のZookeeperを配置します。以下のようにサーバーを選択します。

6. Zookeeperプロパティを構成します。ここでは、デフォルトのプロパティがあります。リアルタイムでは、Zookeeperデータを保存するための個別のディレクトリ/マウントポイントが必要です。パート1では、各サービスのストレージ構成について説明しました。 [続行]をクリックして続行します。

7.インストールが開始されると、インストールが開始されます。ここでバックグラウンド操作を表示できます。

8.上記の手順が正常に完了すると、ステータスは「完了」になります。

9.これで、Zookeeperが正常にインストールおよび構成されました。 [完了]をクリックします。

10. ClouderaManagerダッシュボードでZookeeperサービスを表示できます。

ステップ2:Namenodeの高可用性を有効にする

11. Cloudera Manager –> HDFS –>アクション–>高可用性を有効にするに移動します。

12.ネームサービス名を「nameservice1」として入力します–これは、アクティブとスタンバイの両方のネームノードに共通のネームスペースです。

13.スタンバイNamenodeを配置する2番目のNamenodeを選択します。

14.ここでは、スタンバイNamenodeにmaster2.tecmint.comを選択しています。

15.ジャーナルノードを選択します。これらはアクティブネームノードとスタンバイネームノードを同期するための必須サービスです。

16.以下に説明するように、ジャーナルノードを3つのサーバーに配置して、クォーラムジャーナルを作成しています。 3台のサーバーを選択し、[OK]をクリックします。

17. [続行]をクリックして続行します。

18.ジャーナルノードのディレクトリパスを入力します。このディレクトリをインストールするときにパスを指定する必要があるだけで、サービス自体によって自動的に作成されます。 ‘/ jn’ として言及しています。 [続行]をクリックして続行します。

19.高可用性の有効化を開始します。

20.すべてのバックグラウンドプロセスが完了すると、「完了」ステータスになります。

21.最後に、「高可用性が正常に有効化されました」という通知が届きます。 [完了]をクリックします。

22. Cloudera Manager –> HDFS –> Instancesに移動して、アクティブおよびスタンバイのNamenodeを確認します。

23.ここでは、2つのNamenodeを削除できます。1つは「アクティブ」状態になり、もう1つは「スタンバイ」状態になります。

この記事では、Namenode高可用性を有効にするための段階的なプロセスを実行しました。リアルタイム環境のすべてのクラスターでNamenode高可用性を使用することを強くお勧めします。このプロセスの実行中にエラーが発生した場合は、疑問を投稿してください。次の記事では、ResourceManagerの高可用性について説明します。