Spark2.4.7(Standalone)搭建
Spark2.4.7(Standalone)搭建1.虚拟机环境主机名IP内存磁盘CPU系统hadoop1192.168.56.772G40G1Centos7hadoop2192.168.56.882G40G1Centos7hadoop3192.168.56.992G40G1Centos72.下载安装包使用中科大的开源软件镜像站,https://mirrors.ustc.edu.cn/apache/
Spark2.4.7(Standalone)搭建
1.虚拟机环境
主机名 | IP | 内存 | 磁盘 | CPU | 系统 |
---|---|---|---|---|---|
hadoop1 | 192.168.56.77 | 2G | 40G | 1 | Centos7 |
hadoop2 | 192.168.56.88 | 2G | 40G | 1 | Centos7 |
hadoop3 | 192.168.56.99 | 2G | 40G | 1 | Centos7 |
2.下载安装包
使用中科大的开源软件镜像站,https://mirrors.ustc.edu.cn/apache/spark/spark-2.4.7/
3.安装前提
-
三台机器配置了免密码登录
-
三天机器都安装了JDK
-
三台机器都配置了时间同步
-
三台机器都关闭了防火墙
-
三台机器都配置了IP到主机名的映射
配置JDK的原因是Spark是使用Scala语言编写的,而Scala语言是基于Java的一个脚本化语言,是基于JVM的。
4.解压
首先需要使用sftp工具将Spark的安装包上传到虚拟机hadoop1上,在CRT中使用ALT+P即可为当前ssh会话打开一个sftp会话,将文件拖拽到sftp窗口即可将文件上传到当前虚拟机的用户主目录下。
# 解压到opt目录
tar -zxvf spark-2.4.7-bin-hadoop2.7.tgz -C /opt/
5.配置环境变量
vi /etc/profile
export SPARK_HOME=/opt/spark-2.4.7-bin-hadoop2.7/
export PATH=$PATH:$SPARK_HOME/bin
Spark的客户端相关命令在bin目录,服务端相关命令在sbin目录,但是sbin目录中的启动脚本的脚本名和Hadoop启动脚本的脚本名重名了,因此这里只将bin目录加到了PATH中。
6.修改配置文件
Spark的配置文件位于Spark安装目录的conf目录下,Spark只需要配置两个配置文件即可,一个是指定Worker节点的配置文件slaves,另外一个是指定Spark集群的环境的配置文件spark-env.sh。
# 进入到Spark的配置文件目录
cd /opt/spark-2.4.7-bin-hadoop2.7/conf/
# 查看当前目录下所有文件的详细信息
ll
6.1修改slaves文件
可以直接vi 新建一个slaves文件,slaves文件的配置比较简单,只需要指定Worker节点的主机名即可
vi slaves
hadoop1
hadoop2
hadoop3
6.2修改spark-env.sh
spark-env.sh配置文件的内容相对多一点,需要将配置模板文件复制一份然后进行修改
# 复制模板配置
cp spark-env.sh.template spark-env.sh
# 修改配置
vi spark-env.sh
# 指定spark master节点的主机名
export SPARK_MASTER_HOST=hadoop1
# 指定Hadoop配置文件目录
HADOOP_CONF_DIR=/opt/hadoop-2.7.3/etc/hadoop/
# 指定jdk的安装路径 JAVA_HOME
JAVA_HOME=/opt/jdk1.8.0_171/
官方文档:http://spark.apache.org/docs/2.4.7/spark-standalone.html
7.分发安装包
使用scp命令将配置好的Spark安装文件复制到其它节点
scp -r /opt/spark-2.4.7-bin-hadoop2.7 hadoop2:/opt/
scp -r /opt/spark-2.4.7-bin-hadoop2.7 hadoop3:/opt/
8.启动Spark
Spark的服务端相关脚本位于安装目录的sbin目录下。
主要使用start-all.sh来启动Spark的所有服务,使用stop-all.sh来停止Spark的所有服务。由于这两个脚本和Hadoop的启动停止脚本重名了,所以没有配置环境变量,在使用的时候需要指定全路径
/opt/spark-2.4.7-bin-hadoop2.7/sbin/start-all.sh
Spark的启动是比较快速的,主要是由于Spark只需要启动服务进程就可以,不用像Hadoop一样还要加载元数据。启动完成后各个节点的进程如下:
# 使用jps查看Java进程
jps
9.WebUI
Spark提供了一个Web界面,用于监控Spark集群的状态,由Master进程监听了一个8080端口,在访问的时候使用hadoop1的IP:8088即可,这里使用http://192.168.56.77:8080/访问
Spark搭建就完成了,相对于Hadoop、Hbase等其它大数据平台组件,Spark的搭建是比较简单的。
更多推荐
所有评论(0)