質問

Hadoopアーキテクチャのナメノードは、単一の障害のポイントです。

Hadoopクラスターが大きい人は、この問題にどのように対処しますか?

プライマリのものが失敗した場合に備えて、セカンダリナメノードが引き継ぐことができる、うまく機能した業界が受け入れたソリューションはありますか?

役に立ちましたか?

解決

ヤフーは持っています 特定の推奨事項 さまざまなクラスターサイズの構成設定の場合、NameNode障害を考慮します。例えば:

Hadoopクラスターの障害の単一のポイントは、NameNodeです。他のマシンの損失(断続的または永続的に)ではデータの損失は発生しませんが、ナメノードの損失はクラスターの利用不能になります。ナメノードデータの永続的な損失により、クラスターのHDFが動作できなくなります。

したがって、この構成で別の手順を実行して、nameNodeメタデータをバックアップする必要があります

Facebookは使用します Hadoopの調整されたバージョン データウェアハウスの場合。持っています いくつかの最適化 ナメノードの信頼性に焦点を当てています。 githubで利用可能なパッチに加えて、Facebookは使用しているようです アバターノード 具体的には、一次ナメノードとセカンダリナメノードをすばやく切り替えるため。 Dhruba Borthakurのブログ 単一の障害ポイントとして、ナメノードに関するさらなる洞察を提供する他のいくつかのエントリが含まれています。

編集: NameNodeに対するFacebookの改善に関する詳細情報.

他のヒント

の高可用性 ナメノード で紹介されています Hadoop 2.xリリース。

2つのモードで達成できます - NFSでQJMで

しかし、高い可用性 Quorum Journal Manager(QJM)優先オプションです。

典型的なHAクラスターでは、2つの別々のマシンがナメノードとして構成されています。いつでも、ナメノードの1つがアクティブな状態にあり、もう1つはスタンバイ状態です。 アクティブなナメノード クラスター内のすべてのクライアント操作について責任を負いますが、スタンバイは単に奴隷として機能し、必要に応じて高速フェールオーバーを提供するのに十分な状態を維持しています。

完全なフェールオーバープロセスを説明するSEの質問以下をご覧ください。

Hadoop 2.xでの二次的なナメノードの使用と高可用性

Hadoop NameNodeフェールオーバープロセスはどのように機能しますか?

大きなHadoopクラスターには、数千のデータノードと1つの名前ノードがあります。故障の確率は、マシンカウント(他のすべてが等しい)で直線的に上昇します。したがって、Hadoopがデータノードの障害に対処しなかった場合、拡張しません。 NAMEノードはまだ1つしかないため、単一の障害ポイント(SPOF)がありますが、障害の確率はまだ低いです。

その悲しい、Facebookという名前のノードにフェイルオーバー機能を追加することについてのBkkbradの答えはすぐにあります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top