Sparkスタンドアロンクラスターは、マスタースレーブアーキテクチャのクラスターモードであり、ほとんどのマスタースレーブクラスターと同様に、マスターの単一障害点があります。この問題を解決する方法として、Sparkは2つのソリューションを提供します。
(1)基づく を
#1 飼育係をインストールします。 #2の修正火花防止。追加するenv.sh次の設定ファイルを 以下のコメントアウトを: #SPARK_MASTER_HOST = マスター・デプロイの高可用性を変化させたとして、IP hadoop102 /コメントマスターノード #SPARK_MASTER_PORT = 7077 に追加します以下は:
SPARK_DAEMON_JAVA_OPTS = "をエクスポート
-Dspark.deploy.recoveryMode = ZOOKEEPER
-Dspark.deploy.zookeeper.url = hdp01、hdp02、hdp03 // zookeeperクラスターのIPに入力するzookeeperスタンドアロンでは、ここに1つのみ入力する必要があります
-Dspark.deploy.zookeeper.dir = / spark "
パラメータの説明。
(1)recoveryMode、リカバリーモード(マスター再起動モード)
Zookeeper、FileSystem、Noneの3つのタイプがあります。
(2)deploy.zookeeper.url、Zookeeperのサーバーアドレス
(3)deploy.zookeeper.dir、クラスターメタデータ情報を格納するためのファイルとディレクトリ。
ワーカー、ドライバー、アプリケーションを含みます。
注:
クラスターを通常モードで起動するには、ホストでstart-all.shを実行するだけです。
高可用性モードでスパーククラスターを起動するには、最初に任意のノードでstart-all.shコマンドを起動する必要があります。次に、別のノードでマスターを個別に起動します。
Sparkクラスターの確認:ワーカーが表示され、hdp02が正常に起動する
hdp02のマスターを個別に起動します
マスターが正常に起動しました。ウェブUIで、どのマスターが有効かを確認してください
高可用性検証、hdp01ノードのマスターをシャットダウン、hdp02のマスターノードを自動的に起動できるか
spark + zookeeper高可用性クラスターが正常に構築されました!