Apache Spark™是用于大规模数据处理的统一分析引擎,是内存计算版的Hadoop。这里介绍的是SPARK高可用集群的搭建方式。
实验环境:
主机名 |
IP地址 |
Master |
10.30.59.130 |
Slave1 |
10.30.59.131 |
Slave2 |
10.30.59.132 |
软件要求:
软件名称 |
软件版本 |
JDK |
8u77 |
Zookeeper |
3.4.5 |
Hadoop |
2.6.0 |
Scala |
2.11.12 |
Spark |
2.0.0-hadoop2.6 |
- 软件约定:
- 安装包在 /opt/soft
- 安装目录在 /opt
先决条件:
- 各个主机已完成 主机名-IP 映射
- 各个主机已完成ssh免密登录
- ZooKeeper已部署完毕并启动
- Hadoop已部署完毕并启动
- 可选单节点/伪分布式/全分布式/HA任意一种
- 这里使用HA搭建
实验步骤:
安装Scala
一、解压组件
| [root@master ~]# cd /opt [root@master opt]# tar -xzvf soft/scala-2.11.12.tgz [root@master opt]# mv scala-2.11.12/ scala
|
二、配置环境变量并令其立即生效
| [root@master opt]# vi /etc/profile.d/hadoop-etc.sh export SCALA_HOME=/opt/scala export PATH=$PATH:$SCALA_HOME/bin
[root@master opt]# source /etc/profile.d/hadoop-etc.sh
|
安装SPARK
一、解压组件
| [root@master opt]# tar -xzvf soft/spark-2.0.0-bin-hadoop2.6.tgz [root@master opt]# mv spark-2.0.0-bin-hadoop2.6/ spark
|
二、填写配置文件
| [root@master opt]# cp spark/conf/spark-env.sh.template spark/conf/spark-env.sh [root@master opt]# vi spark/conf/spark-env.sh
|
| HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop SPARK_LOCAL_IP=master SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=master,slave1,slave2"
|
注意:第二行SPARK_LOCAL_IP
在文件使用scp同步后需要根据实际的主机名填写
| [root@master opt]# cp spark/conf/slaves.template spark/conf/slaves [root@master opt]# vi spark/conf/slaves
|
三、修改冲突文件名
| [root@master opt]# mv spark/sbin/start-all.sh spark/sbin/start-spark-all.sh [root@master opt]# mv spark/sbin/stop-all.sh spark/sbin/stop-spark-all.sh
|
四、配置环境变量并令其立即生效
| [root@master opt]# vi /etc/profile.d/hadoop-etc.sh export SPARK_HOME=/opt/spark export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
[root@master opt]# source /etc/profile.d/hadoop-etc.sh
|
五、同步两台slave节点的配置并令其环境变量立即生效
| [root@master opt]# scp -r scala slave1:/opt [root@master opt]# scp -r scala slave2:/opt [root@master opt]# scp -r spark slave1:/opt [root@master opt]# scp -r spark slave2:/opt [root@master opt]# scp /etc/profile.d/hadoop-etc.sh slave1:/etc/profile.d [root@master opt]# scp /etc/profile.d/hadoop-etc.sh slave2:/etc/profile.d
|
- 在slave节点上令其环境变量立即生效,同时修改
spark-env.sh
文件
| [root@slave1 ~]# source /etc/profile.d/hadoop-etc.sh [root@slave1 ~]# vi /opt/spark/conf/spark-env.sh
|
| [root@slave2 ~]# source /etc/profile.d/hadoop-etc.sh [root@slave2 ~]# vi /opt/spark/conf/spark-env.sh
|
六、启动SPARK
| [root@master opt]# start-spark-all.sh [root@slave1 ~]# start-spark-all.sh
|
实验验证