Spark学习之路 (一)Spark2.4 HA集群的分布式安装

一、下载Spark安装包

1、从官网下载

http://spark.apache.org/downloads.html

2、从微软的镜像站下载

http://mirrors.hust.edu.cn/apache/

3、从清华的镜像站下载

https://mirrors.tuna.tsinghua.edu.cn/apache/

二、安装基础

1、Java8安装成功

2、zookeeper安装成功

3、hadoop-3.2.0 HA安装成功

4、Scala安装成功(不安装进程也可以启动)

三、Spark安装过程

1、上传并解压缩

2、进入spark/conf修改配置文件

(1)进入配置文件所在目录

[root@cdh-node01 apps]# cd spark-2.4.0-bin-hadoop2.7/conf/

(2)复制spark-env.sh.template并重命名为spark-env.sh,并在文件最后添加配置内容

[root@cdh-node01 conf]# cp spark-env.sh.template spark-env.sh

export JAVA_HOME=/home/apps/jdk1.8.0_171
#export SPARK_MASTER_IP=cdh-node01
export SPARK_MASTER_PORT=7077
export SPARK_WORKER_CORES=1
#export SPARK_WORKER_INSTANCES=1
export SPARK_WORKER_MEMORY=500m

export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export SPARK_HOME=/home/apps/spark-2.4.0-bin-hadoop2.7
export SPARK_JAR=/home/apps/spark-2.4.0-bin-hadoop2.7/jars/*.jar
export PATH=$SPARK_HOME/bin:$PATH
export SPARK_CLASSPATH=$SPARK_CLASSPATH:/home/apps/spark-2.4.0-bin-hadoop2.7/jars/mysql-connector-java-5.1.32-bin.jar
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=cdh-node02:2181,cdh-node03:2181,cdh-node04:2181 -Dspark.deploy.zookeeper.dir=/spark"

注:

#export SPARK_MASTER_IP=hadoop1  这个配置要注释掉。

(3)复制slaves.template成slaves

[root@cdh-node01 conf]# vim slaves

(4)将安装包分发给其他节点

[root@cdh-node01 apps]# scp -r spark-2.4.0-bin-hadoop2.7/ cdh-node02:$PWD
[root@cdh-node01 apps]# scp -r spark-2.4.0-bin-hadoop2.7/ cdh-node03:$PWD
[root@cdh-node01 apps]# scp -r spark-2.4.0-bin-hadoop2.7/ cdh-node04:$PWD

4、配置环境变量

所有节点均要配置

[root@cdh-node01 apps]# vim /etc/profile

#Spark
export SPARK_HOME=/home/apps/spark-2.4.0-bin-hadoop2.7
export PATH=$PATH:$SPARK_HOME/bin

[root@cdh-node01 apps]# source /etc/profile

四、启动

1、先启动zookeeper集群

cdh-node02/03/04节点全都执行

[root@cdh-node02 sbin]# zkServer.sh start

[root@cdh-node03 sbin]# zkServer.sh start

[root@cdh-node04 sbin]# zkServer.sh start

2、在启动HDFS集群

任意一个节点执行即可

[root@cdh-node01 apps]# start-dfs.sh

3、在启动Spark集群

在一个节点上执行

[root@cdh-node01 apps]# cd spark-2.4.0-bin-hadoop2.7/sbin/
[root@cdh-node01 sbin]# ./start-all.sh

4、查看进程

5、问题

查看进程发现spark集群只有cdh-node01成功启动了Master进程,其他3个节点均没有启动成功,需要手动启动,进入到//home/apps/spark-2.4.0-bin-hadoop2.7/sbin目录下执行以下命令,3个节点都要执行

[root@cdh-node04 ~]# cd /home/apps/spark-2.4.0-bin-hadoop2.7/sbin
[root@cdh-node04 sbin]# start-master.sh

五、验证

1、查看Web界面Master状态

cdh-node01是ALIVE状态,cdh-node02、cdh-node03和hadoop4均是STANDBY状态

2、验证HA的高可用

手动干掉cdh-node01上面的Master进程,观察是否会自动进行切换

干掉cdh-node01上的Master进程之后,再次查看web界面

cdh-node01节点,由于Master进程被干掉,所以界面无法访问

发布了43 篇原创文章 · 获赞 34 · 访问量 19万+

猜你喜欢

转载自blog.csdn.net/lin443514407lin/article/details/86675101
今日推荐