Spark 集群的模式及提交任务的方式
Spark 集群的两种模式:
Standalone 模式
Standalone-client 任务提交方式
提交命令
./spark-submit
--master spark://node1:7077 (主节点的位置)
--class 类的包+类名
jar包的位置
1000 # 分区参数, 也可以说是并行度
||
./spark-submit
--master spark://node1:7077
--deploy-mode client
--class 类的包+类名
jar包的位置
100 # 分区参数, 也可以说是并行度
执行原理
执行流程
总结
Standalone-cluster 任务提交方式
提交命令
./spark-submit
--master spark://node1:7077
--deploy-mode cluster
--class 包+类名
jar包的位置
100 # 分区参数, 也可以说是并行度
#注意:Standalone-cluster提交方式,应用程序使用的所有jar包和文件,必须保证所有的worker节点都要有,因为此种方式,spark不会自动上传包。
# 解决方式:
# 1.将所有的依赖包和文件打到同一个包中,然后放在hdfs上。
# 2.将所有的依赖包和文件各放一份在worker节点上。
执行原理
执行流程
总结
On Yarn 模式
Yarn-client 任务提交方式
提交命令
./spark-submit
--master yarn
--class 包+类名
jar文件位置
100
||
./spark-submit
--master yarn–client
--class 包+类名
jar文件位置
100
||
./spark-submit
--master yarn
--deploy-mode client
--class 包+类名
jar文件位置
100
执行原理
执行流程
总结
Yarn-client模式同样适用于测试, 因为Driver运行在本地, Driver会与yarn集群中的Executor 进行大量的通信, 会造成客户机网卡流量的大量增加
ApplicationMaster 的作用:
为当前的Application申请资源
给NodeManager发送消息启动Executor
Yarn-cluster 任务提交方式
提交命令
./spark-submit
--master yarn
--deploy-mode cluster
--class 包+类名
jar文件位置
100
||
/spark-submit
--master yarn-cluster
--class 包+类名
jar文件位置
100
执行原理
执行流程
总结
原文:https://www.cnblogs.com/ronnieyuan/p/11729373.html