大数据-spark3.5安装部署之standalone模式

真实工作中还是要将应用提交到集群中去执行,Standalone模式就是使用Spark自身节点运行的集群模式,体现了经典的master-slave模式。集群共三台机器,具体如下

u22server4spark: master worker

u22server4spark2: worker

u22server4spark3: worker

配置免密登录

spark使用standalone模式部署时,从节点要与主节点之间进行通信。如果不配置免密登录,启动时会提示输入密码,很可能造成从节点没有成功启动;启动后当主从节点要互相访问时,依然需要密码,这时肯定失败,例如web查看时只看到一个主节点自身的worker。

节点互访存在于主从之间,从从之间不存在。所以免密配置存在于主从、从主之间。

免密登录配置过程详见:《大数据-spark3.5安装部署之免密登录

配置master

上传解压

使用PortX将jdk、spark文件上传至/opt

jdk解压

tar zxvf jdk-8u271-linux-x64.tar.gz

spark解压

进入/opt目录,创建目录module,解压文件至/opt/module

进入module,并修改名称为spark-standalone

调整配置文件

要调整的配置内容包括:jdk环境变量、hosts文件、spark配置文件。

jdk环境变量

以root用户配置环境变量

cd ~

保存后,以root用户,执行source .profle,使更改生效,并验证。

hosts文件

除将master本机即u22server4spark的ip与主机名写入外,还需要将将另外两台worker从机的ip地址与主机名写入u22server4spark的/etc/hosts,并将127.0.0.1 u22server4spark注释。否则造成环路,两个从机向master注册不成功,web查看时,wokers只会出现主机所在的这个worker。

vi /etc/hosts

spark配置文件

进入conf目录,修改workers.template为workers

修改workers文件,添加worker节点,即集群中的主机名

修改spark-env.sh.template文件名为spark-env.sh

向spark-env.sh添加内容JAVA_HOME环境变量及对应的master节点

备注:7077是默认的内部通信端口

分发至集群其他机器

分别向两台从机u22server4spark2、u22server4spark3分发jdk、spark文件。

分发至u22server4spark2

scp -r /opt/jdk1.8.0_271 u22server4spark2:/opt

或者 scp -r /opt/jdk1.8.0_271 192.168.12.77:/opt

分发spark前,在u22server4spark2的/opt中新建目录module

scp -r /opt/module/spark-standalone u22server4spark2:/opt/module

分发至u22server4spark3

scp -r /opt/jdk1.8.0_271 u22server4spark3:/opt

或者 scp -r /opt/jdk1.8.0_271 192.168.12.88:/opt

分发spark前,在u22server4spark3的/opt中新建目录module

scp -r /opt/module/spark-standalone u22server4spark3:/opt/module

配置worker

u22server4spark2

jdk环境变量

同前

hosts文件

向从机的/etc/hosts文件中添加master主机信息,并将127.0.0.1 u22server4spark2注释

vi /etc/hosts

配置worker2

u22server4spark3

jdk环境变量

同前

hosts文件

向从机的/etc/hosts文件中添加master主机信息,并将127.0.0.1 u22server4spark3注释

vi /etc/hosts

验证操作

执行以下操作,如果都没有报错,则spark安装部署成功。

启停

启动

直接在master主机即u22server4spark,运行脚本 ./start-all.sh

或者

分别在主机即u22server4spark,运行 ./start-master.sh;从机即u22server4spark2、u22server4spark3运行脚本 ./start-worker.sh

主机jps

从机jps

web

停止

直接在master主机即u22server4spark,运行脚本 ./stop-all.sh

或者

分别在主机即u22server4spark,运行 ./stop-master.sh;从机即u22server4spark2、u22server4spark3运行脚本 ./stop-worker.sh

交互

使用命令行或者提交作业的方式,与spark进行交互。

命令行

同local即本地部署

提交应用

向主机节点即u22server4spark提交一个简单的Spark任务测试集群是否配置成功

bin/spark-submit \

--master spark://192.168.12.66:7077 \

--class org.apache.spark.examples.SparkPi \

./examples/jars/spark-examples_2.12-3.5.5.jar \

10

备注:示例代码在spark的目录中

应用运行中,查看web时,会在Running Applications下方看到;应用完成后,查看web时,会在Compleeted Applications下方看到。

相关推荐
大数据CLUB5 分钟前
基于hive和mapreduce的地铁数据分析及可视化_hive作为数据库
大数据·hive·hadoop·分布式·数据分析·mapreduce
说私域27 分钟前
蒸汽机革命后工业生产方式的变革与AI智能名片S2B2C商城小程序的影响
大数据·人工智能·小程序
深圳UMI1 小时前
AI笔记在学习与工作中的高效运用
大数据·人工智能
递归尽头是星辰3 小时前
Spark核心技术解析:从RDD到Dataset的演进与实践
大数据·rdd·dataset·spark核心·spark编程模型
风跟我说过她5 小时前
Hadoop HA (高可用) 配置与操作指南
大数据·hadoop·分布式·zookeeper·centos
沧澜sincerely5 小时前
WSL2搭建Hadoop伪分布式环境
大数据·hadoop·搜索引擎
计算机编程小央姐12 小时前
【Spark+Hive+hadoop】基于spark+hadoop基于大数据的人口普查收入数据分析与可视化系统
大数据·hadoop·数据挖掘·数据分析·spark·课程设计
鲲志说12 小时前
数据洪流时代,如何挑选一款面向未来的时序数据库?IoTDB 的答案
大数据·数据库·apache·时序数据库·iotdb
没有bug.的程序员12 小时前
MVCC(多版本并发控制):InnoDB 高并发的核心技术
java·大数据·数据库·mysql·mvcc
nju_spy15 小时前
南京大学 - 复杂结构数据挖掘(一)
大数据·人工智能·机器学习·数据挖掘·数据清洗·南京大学·相似性分析