複数のWebサイトやビデオで資料を調査していると、3つのHadoopコンポーネントZooKeeper、Journal Node、およびQuorum JournalManagerの機能と目的の違いに混乱しています。
上記のそれぞれを発明した理由と、上記の3つのコンポーネントの目的と機能の違いを誰かに説明してもらえますか?
前もって感謝します。
このように考えると、zookeeperは、それぞれが工場を監視して調整するように割り当てられた人々のグループです。ジャーナルノードは、すべての工場管理者が他のステータスを確認して調整できる場所です。 QJMは、フェイルオーバーの場合の調整を改善するためにHAで使用される両方の組み合わせです。
zookeeperは、zookeeperを必要とするhbaseregionserversおよびその他のhadoopモジュールを調整します。
ジャーナルノードは、hadoopデータノードをnamenodeと調整します。
QJMは、ジャーナルノードで使用される手法を使用してリージョンサーバーを調整します
コアHadoopセットアップでは、分散セットアップの場合はジャーナルノードのみが必要です
まず、定足数は、決定のために過半数の必要があることを意味します。したがって、「クォーラム」という単語を見るときは、クラスター化されていると考える必要があります。マルチホスト構成。この用語は、Zookeeperノードとジャーナルノードの両方で聞くことができます。
それらの機能の簡単な説明は、それらの目的を区別するのに役立ちます。
Zookeeper:Zookeeperは、アプリケーションが頻繁にチェックする必要のある情報の中央同期アプリケーションです。命名構造、情報、構成情報(または単に構成)など、アプリケーションが必要とする多くの情報が存在する可能性があります。最も一般的なケースは、アプリケーションの構成です。たとえば80台のサーバーに関連する構成を変更する場合、この変更をすべてのノードに同期するには、同期サービスを開発する必要があります。アプリケーション自体にこの機能がある場合があります。しかし、環境にさらに12個のアプリケーションを追加するとします。各アプリケーションの同期サービスを1つずつ処理する必要があります。そこで、飼育係が登場します。飼育係は、これらすべての情報の管理を単独で処理できます。クラスターとしてセットアップした場合(奇数のホストが必要です。 なぜ? )、Zookeeperの可用性が高く(フェイルオーバーの場合)、Zoopeekerクォーラムがあります。
ジャーナルノード:高可用性Hadoopクラスターでは、アクティブ/パッシブモードで実行されている複数のNamenodeがあります。アクティブなnamenodeは、ジャーナルノードに変更を通知します。スタンバイ名ノードは、何が変更されたかについてジャーナルノードに要求します。 Zookeeperの場合と同様に、クラスター構成としてセットアップした場合(ここでも奇数のホストが必要です。 なぜ? )、Journal Node機能があり、クォーラムジャーナルマネージャーがあります。
実際、ラボの目的(PCのVM)を除いて、単一のホストまたはノードとして設定されているのは聞こえませんでした。
1. 飼育係
ZooKeeperは、構成情報の維持、命名、分散同期の提供、およびグループサービスの提供を行うための集中型サービスです。これらの種類のサービスはすべて、分散アプリケーションによって何らかの形で使用されます
HadoopエコシステムにおけるZookeeperの役割:
Hadoop Namenodeフェイルオーバープロセス中に、ZooKeeperを使用してスプリットブレインシナリオを回避し、フェイルオーバーによって名前ノードの状態が分岐しないようにしました。
詳細については、この投稿を参照してください。
Hadoop Namenodeフェイルオーバープロセスはどのように機能しますか?
2。JournalNode (Namenodeフェイルオーバープロセスで使用)
スタンバイノードがその状態をアクティブノードと同期し続けるために、両方のノードは「JournalNodes」(JN)と呼ばれる別々のデーモンのグループと通信します。
JournalNodeマシン-JournalNodeを実行するマシン。 JournalNodeデーモンは比較的軽量であるため、これらのデーモンは、他のHadoopデーモンとマシン上で合理的に併置できます。たとえば、NameNodes、JobTracker、またはYARN ResourceManager。
注:ログの編集以降、少なくとも3つのJournalNodeデーモンが必要です変更は、大多数のJNに書き込む必要があります。これにより、システムは単一のマシンの障害に耐えることができます。
3。Quorum Journal Manager(QJM)により、アクティブとスタンバイのNameNode間で編集ログを共有できます
重要なのは、Quorum Journal Managerを使用する場合、1つのNameNodeのみが使用されることです。 JournalNodesへの書き込みが許可されるため、スプリットブレインシナリオからファイルシステムメタデータが破損する可能性はありません。