spark on yarn 执行过程介绍

本文详细介绍了使用 Spark 在 YARN 模式下执行应用程序的具体步骤,包括从用户权限验证到任务执行完毕的全过程。涵盖了 Actor 启动、服务注册、资源分配等关键环节。

执行语句:

sudo spark-submit --master yarn--driver-memory 7G --executor-memory 5G --executor-cores 24 --num-executors 4--class spark.init.InitSpark /home/hxf/gogo.jar>/home/hxf/dddd.txt2>&1;


执行过程:



执行过程简介:

1 通过SecurityManager进行用户权限验证。

2 远程启动一个Actor(实际上就是启动提交程序所在机器上的一个actor),地址是:akka.tcp://sparkDriver@master01.cloudera.pmsc.gov.cn:32900;开启"SparkDriver"服务,端口是32900。

3 通过SparkEnv注册MapOutputTracker\BlockManagerMaster。

4 DiskBlockManager 会在本地创建一个文件夹 /tmp/spark-local-yyyyMMddHHmmss.....,MemoryStore开启一个内存空间(我的是2.1GB)。

5 HTTPFileServer 会在本地创建一个文件夹/tmp/xxx。启动HttpServer,开启“HTTP file server”服务,服务端口是43095.开启“SparkUI”服务,服务端口是4040.

6 SparkContext 加载自己的jar(我的所有的东东都在gogo.jar)

7 通过RMProxy连接到ResourceManager(master01.cloudera.pmsc.gov.cn/10.10.244.131:8032)

8 客户端向集群请求获得一个application,该集群有4个NodeManager

9 客户端验证该条请求请求的内存是否超过了集群的上限(8192MB 每个container)

10 分配一个AM container,该container可用内存:4096MB+384MB

11 为AM准备资源(spark-assembly-1.2.0-cdh5.3.0-hadoop2.5.0-cdh5.3.0.jar)

12 客户端向ResourceManager提交任务

13 AM注册为一个 actor(akka.tcp://sparkYarnAM@datanode01.cloudera.pmsc.gov.cn:52155/user/YarnAM#-1153425007)

14 application 启动

15 BlockManagerMaster注册BlockManager

16 注册Executor

17 创建共享变量

18 切分stage,DAGScheduler提交提交Stage,DAGScheduler提交task

19 开启任务

20 执行任务

21 执行任务完毕

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值