Spark HA配置
版本配置:
spark-2.1.1-bin-hadoop2.7.tgz
hadoop2.7.3
zookeeper-3.4.10
架构图:
在前面 Zookeeper、Spark JobHistoryServer配置、Spark Standalone模式与测试 的基础上:
该文章配置的HA是针对Standalone模式的。
1)zookeeper 正常安装并启动
2)修改 spark-env.sh 文件添加如下配置:
注释掉如下内容:
#SPARK_MASTER_HOST=hadoop102
#SPARK_MASTER_PORT=7077
添加上如下内容:
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=master,slave1,slave2,slave3 -Dspark.deploy.zookeeper.dir=/spark"
3)分发配置文件
[[email protected] conf]# xsync spark-env.sh
我使用的是scp
4)在 (master 机器)上关闭启动全部节点
[[email protected] spark-2.1.1-bin-hadoop2.7]# sbin/stop-all.sh
[[email protected] spark-2.1.1-bin-hadoop2.7]# sbin/start-all.sh
5)slave1上单独启动 (Master 节点)
[[email protected] spark-2.1.1-bin-hadoop2.7]# sbin/start-master.sh
6)spark HA 集群访问
在 /usr/local/BigDataApp/spark-2.1.1-bin-hadoop2.7 目录下:
bin/spark-shell \ --master spark://master:7077,slave1:7077 \ --executor-memory 2g \ --total-executor-cores 2
测试:把master机器上的Master停掉,看看是否slave1机器上的Master状态是否从STANDBY变为ALIVE
然后在master机器上重新启动下Master sbin/start-master.sh
测试成功!