Yarn Client 模式
第一步,Driver端在任务提交的本地机上运行
第二步,Driver启动之后就会和ResourceManager通讯,山慎仔申请启动一个ApplicationMaster
第逗汪三步,ResourceManager就会分配container容器,在合适的nodemanager上启动ApplicationMaster,负责向ResourceManager申请Executor内存
第四步,ResourceManager接到ApplicationMaster的资源申请后会分配container,然后ApplicationMaster在资源分配指定的NodeManager上启动孝缺Executor进程
第五步,Executor进程启动后会向Driver反向注册,Executor全部注册完成后Driver开始执行main函数
第六步,之后执行到Action算子时,触发一个Job,并根据宽依赖开始划分stage,每个stage生成对应的TaskSet,之后将task分发到各个Executor上执行。
Yarn Cluster 模式
第一步,在YARN Cluster模式下,任务提交后会和ResourceManager通讯申请启动ApplicationMaster
第二步, 随后ResourceManager分配container,在合适的NodeManager上启动ApplicationMaster,此时的ApplicationMaster就是Driver。
第三步, Driver启动后向ResourceManager申请Executor内存,ResourceManager接到ApplicationMaster的资源申请后会分配container,然后在合适的NodeManager上启动Executor进程
第四步,Executor进程启动后会向Driver反向注册,Executor全部注册完成后Driver开始执行main函数,
第五步,之后执行到Action算子时,触发一个Job,并根据宽依赖开始划分stage,每个stage生成对应的TaskSet,之后将task分发到各个Executor上执行。
[if !supportLists]2.1.1 [endif] YARN Clu图2-4 YARN Cluster 模式
在YARN Cluster 模式下,任务提交后会和ResourceManager 通悉消讯申请启动
ApplicationMaster,随后ResourceManager 分配container,在合适的NodeManager
上启动ApplicationMaster,此时的ApplicationMaster 跟Driver在一个NodeManager上,但当有多个App任务时,Driver会分布在多个NodeManager上面,因为Driver要与client通信睁誉知,Driver在同一个NodeManager上会对网络的要求很高。
Driver 启动后向ResourceManager 申请Executor 内存,ResourceManager 接到
ApplicationMaster 的资源申请后会分配container,然后在合适的NodeManager 上启动Executor 进程,Executor 进虚培程启动后会向Driver 反向注册,Executor 全部注册完成后Driver 开始执行main 函数,之后执行到Action 算子时,触发一个job,并根据宽依赖开始划分stage,每个stage 生成对应的taskSet,之后将task 分发到各个
Executor 上执行。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)