standalone client模式 standalone cluster模式 yarn模式架构整理

standalone client模式是spark自带的一个分布式集群模式(单机模式)

主要有客户端节点,master节点,worker节点

worker节点启动后会向master节点注册信息,把自身的计算资源汇报给master,master节点保存信息后,会向worker返回连接告诉他注册成功,worker会定期向master发送心跳报活。

客户端提交任务把他需要多少资源提交给master,(底层走的rpc通信)master收到请求后,会对众多worker做出选择,看哪个有多余资源,找到对应的worker之后,会启动worker对应的executor,executor启动之后会向driver做出反向注册,这样driver和exexutor就建立联系了。这样我们的程序就生成DAG,切分space,生成task,把对应的task 调度到executor上。task才是真正执行任务的单位

 

 

 

standalone cluster模式 

和单alone模式最大的区别就是  driver运行在集群中,起了个名字叫driverwapper,客户端向master发起请求会会先启动一个worker节点启动driverwapper,之后在启动其他worker的executor其中的具体执行顺序步骤和standalone模式差不多,最主要就是driver在集群中。

 

 

 spark yarn on cluster模式 执行流程

1.  client 向着resourcemanager 申请资源,返回一个applicationid

2 client 上传spark jar下面的jar包,自己写的jar包和配置到hdfs上

3.resourcemanager会去找一个资源充足的nodemanager

4.通过rpc通信框架让nodemanager从hdfs上下载jar包和配置,启动applicationmaster

5.applicationmaster向resourcemanager申请资源

6.Resourcemanager中的resourceScheduler找到符合条件的nodemanager,把nodemanager的信息返回给applicationmaster

7.applicationmaster和返回的nodemanager进行通信

8.nodemanager从hdfs下载依赖

9. nodemanager启动子进程 启动executor

10 executor启动之后反向向applicationmaster(driver) 注册

11 以后在driver中构建DAG切分space生成task,把task调度到对应的executor。

 

 

posted @ 2021-11-27 17:03  习惯了蓝  阅读(282)  评论(0)    收藏  举报