目录

 

1、首先介绍yarn的模型图

(1)、yarn 模型图

(2)、yarn的流程如下:

2、cluster模式下提交任务流程

(1)、流程图如下

(2)、工作流程如下:

3、在Client模式下,Driver进程会在当前客户端启动,客户端进程一直存在直到应用程序运行结束。

(1)、client模式下的流程图

(2)、工作流程如下:


1、首先介绍yarn的模型图

(1)、yarn 模型图

 

Spark on yarn Client和Cluster两种运行模式的工作流程、基本概念

(2)、yarn的流程如下:

YARN中的应用程序的提交处理,可以依次分为以下步骤:

(1)用户通过client向RM提交应用程序

(2)RM在接收到一个新的应用程序后,会先选择一个container用于启动该应用程序特有的AM

(3)AM启动后,向RM请求运行应用程序所需要的资源

(4)RM会尽可能地分配AM所请求的资源的容器,表达为container容器ID和主机名

(5)AM根据给定的容器ID和主机名,要求对应的NodeManager使用这些资源启动一个特定于应用程序的任务。

(6)NodeManager启动任务,并监视该任务使用资源的健康状况。

(7)AM持续监视任务的执行情况。

(8)当任务执行完成时,AM会向RM汇报并注销执行任务的容器,以及注销自己。

 

2、cluster模式下提交任务流程

(1)、流程图如下

Spark on yarn Client和Cluster两种运行模式的工作流程、基本概念

Spark on yarn Client和Cluster两种运行模式的工作流程、基本概念

(2)、工作流程如下:


1.在集群的节点中,启动master (ResourceManager), worker(NodeManager)进程,worker(NodeManager)进程启动成功后,会向Master(ResourceManager)进行注册。
3.客户端提交任务后,master通知worker节点启动driver(application Master)进程。(worker的选择是随意的,只要worker有足够的资源即可)
driver进程启动成功后,将向Master返回注册成功信息
4.master通知worker启动executor进程
5.启动成功后的executor进程向driver进行注册
6.Driver对job进行划分stage,并对stage进行更进一步的划分,将一条pipeline中的所有操作封装成一个task,并发送到向自己注册的executor进程中的task线程中执行
7.所有task执行完毕后,程序结束

通过上面的描述我们知道:Mater(ResourceManager)负责整个集群的资源的管理和创建worker(NodeManager),worker负责当前结点的资源的管理,并会将当前的cpu,内存等信息定时告知master,并且负责创建Executor进程(也就是最小额资源分配单位),Driver负责整个应用任务的job的划分和stage的切割以及task的切割和优化,并负责把task分发到worker对应的节点的executor进程中的task线程中执行, 并获取task的执行结果,Driver通过SparkContext对象与spark集群获取联系,得到master主机host,就可以通过rpc向master注册自己。

3、在Client模式下,Driver进程会在当前客户端启动,客户端进程一直存在直到应用程序运行结束。

(1)、client模式下的流程图

Spark on yarn Client和Cluster两种运行模式的工作流程、基本概念

 

(2)、工作流程如下:


1.启动master和worker . worker负责整个集群的资源管理,worker负责监控自己的cpu,内存信息并定时向master汇报
2.在client中启动Driver进程,并向master注册
3.master通过rpc与worker进行通信,通知worker启动一个或多个executor进程
4.executor进程向Driver注册,告知Driver自身的信息,包括所在节点的host等
5.Driver对job进行划分stage,并对stage进行更进一步的划分,将一条pipeline中的所有操作封装成一个task,并发送到向自己注册的executor
进程中的task线程中执行
6.应用程序执行完成,Driver进程退出

 

相关文章:

  • 2021-10-04
  • 2021-08-20
  • 2021-08-19
  • 2021-04-03
  • 2021-09-21
  • 2021-12-04
  • 2021-08-26
  • 2022-01-20
猜你喜欢
  • 2021-04-21
  • 2021-09-20
  • 2021-09-16
  • 2021-10-05
  • 2021-04-02
  • 2022-03-09
相关资源
相似解决方案