Spark完全分布式集群环境搭建详细教程

1.准备的环境

jdk、zookeeper、hadoop集群。

当前服务器:三个服务器节点(hadoop101/hadoop102/hadoop103)

2.将安装软件上传到 hadoop101服务器/opt目录下

例如:spark-3.5.0-bin-hadoop3-scala2.13.tgz

3.将spark的安装目录解压到 /usr/local/software/

复制代码
tar -zxvf /opt/spark-3.5.0-bin-hadoop3-scala2.13.tgz -C /usr/local/software

4.修改文件名

复制代码
cd /usr/local/software/

mv spark-3.5.0-bin-hadoop3-scala2.13 spark

5.spark环境变量的配置

复制代码
export SPARK_HOME=/usr/local/software/spark
export SPARKPYTHON=/usr/local/software/spark/python

:$SPARK_HOME/bin:$SPARK_HOME/sbin:$SPARKPYTHON

6.环境变量的生效

复制代码
source /etc/profile

7.测试

执行:spark-shell

8.安装python插件

三台服务器都需要进行安装

复制代码
yum install -y python3

9.修改spark的配置信息

将 spark-env.sh.template 模板复制为:spark-env.sh

复制代码
cd /usr/local/software/spark/conf

cp spark-env.sh.template spark-env.sh

修改:spark-env.sh 文件

需要在spark-env.sh 中添加配置环境配置信息(Java/hadoop/zookeeper)

将以下内容,直接添加到 spark-env.sh 文件末尾即可

复制代码
export JAVA_HOME=/usr/local/software/jdk
export HADOOP_HOME=/usr/local/software/hadoop
export HADOOP_CONF_DIR=/usr/local/software/hadoop/etc/hadoop
export JAVA_LIBRAY_PATH=/usr/local/software/hadoop/lib/native
export SPARK_DIST_CLASSPATH=$(/usr/local/software/hadoop/bin/hadoop classpath)

export SPARK_DAEMON_JAVA_OPTS="
-Dspark.deploy.recoveryMode=ZOOKEEPER 
-Dspark.deploy.zookeeper.url=hadoop101:2181,hadoop102:2181,hadoop103:2181 
-Dspark.deploy.zookeeper.dir=/spark"

export SPARK_WORKER_MEMORY=8g
export SPARK_WORKER_CORE=8
export SPARK_MASTER_WEBUI_PORT=6633

10.修改集群节点的信息

将 workers.template 文件复制出来一个 workers

复制代码
cd /usr/local/software/spark/conf

cp workers.template workers

修改workers内容,将三个服务器的名称添加进去

如:hadoop101、hadoop102、hadoop103

11.配置历史日志

将spark-default.conf.template 复制为:spark-default.conf

复制代码
cd /usr/local/software/spark/conf

cp spark-defaults.conf.template spark-defaults.conf

修改 spark-default.conf 文件的内容

将以下内容添加到 spark-default.conf 文件的末尾

复制代码
spark.eventLog.enabled  true
spark.eventLog.dir      hdfs://laoma/spark-log

需要在 hdfs中创建 /spark-log 目录

hdfs dfs -mkdir /spark-log

12.spark环境配置文件的修改

将以下内容添加到 spark-env.sh 文件的末尾

复制代码
export SPARK_HISTORY_OPTS="
-Dspark.history.ui.port=18080 
-Dspark.history.retainedApplications=30 
-Dspark.history.fs.logDirectory=hdfs://laoma/spark-log"

13.修改spark启动文件的名称

spark/sbin 中的启动文件名与hadoop的启动文件名相同,因此进行修改.

复制代码
mv start-all.sh start-spark.sh
mv stop-all.sh stop-spark.sh

14.将spark的文件及环境变量的配置信息传递到其它的服务器上

复制代码
 scp -r /usr/local/software/spark root@hadoop102:/usr/local/software
 scp -r /usr/local/software/spark root@hadoop103:/usr/local/software

 scp -r /etc/profile.d/my_env.sh root@hadoop102:/etc/profile.d/
 scp -r /etc/profile.d/my_env.sh root@hadoop103:/etc/profile.d/

15.hadoop102/hadoop103 环境生效

复制代码
source /etc/profile

16.启动spark服务器

首先:启动zookeeper、hadoop集群

在第一台服务器上,例如 hadoop101 上,启动spark,如下

复制代码
start-spark.sh

start-history-server.sh

查看进程

1)hadoop101 服务器上

2)hadoop102服务器上

3)hadoop103服务器上

17.访问webui 界面

http://IP地址:6633

如下:

18.服务器关闭

先关闭 spark历史服务,关闭spark服务,hadoop集群,zookeeper

恭喜您,到此安装成功。

相关推荐
永霖光电_UVLED10 分钟前
打造更优异的 UVB 激光器
大数据·制造·量子计算
m0_4665252916 分钟前
绿盟科技风云卫AI安全能力平台成果重磅发布
大数据·数据库·人工智能·安全
晟诺数字人22 分钟前
2026年海外直播变革:数字人如何改变游戏规则
大数据·人工智能·产品运营
vx_biyesheji000126 分钟前
豆瓣电影推荐系统 | Python Django 协同过滤 Echarts可视化 深度学习 大数据 毕业设计源码
大数据·爬虫·python·深度学习·django·毕业设计·echarts
2501_9436953335 分钟前
高职大数据与会计专业,考CDA证后能转纯数据分析岗吗?
大数据·数据挖掘·数据分析
实时数据1 小时前
通过大数据的深度分析与精准营销策略,企业能够有效实现精准引流
大数据
子榆.2 小时前
CANN 性能分析与调优实战:使用 msprof 定位瓶颈,榨干硬件每一分算力
大数据·网络·人工智能
新芒2 小时前
暖通行业两位数下滑,未来靠什么赢?
大数据·人工智能
忆~遂愿2 小时前
CANN ATVOSS 算子库深度解析:基于 Ascend C 模板的 Vector 算子子程序化建模与融合优化机制
大数据·人工智能
艾莉丝努力练剑3 小时前
【Linux:文件】Ext系列文件系统(初阶)
大数据·linux·运维·服务器·c++·人工智能·算法