YARN提交job的流程

YARN是hadoop的分布式资源管理器,可以为不同的应用提供统一的资源管理和调度,如mapreduce、spack等
YARN提交job的流程
yarn提交job的流程:
首先客户端向Resourcemanage提交作业,申请job ID,RM把此请求交给ApplicationManage,AM处理该请求返回一个作业id和一个hdfs路径。客户端接收到该jobid和hdfs路径,把此job所需的资源(jar包、配置信息,分片信息)等上传到得到的hdfs的路径上上传完成后,想RM申请执行作业,RM把此执行请求给resourceschel,rs调度器把作业放到队列中,当执行相应的请求时,并通知AM分配容器,调用NodeManager开辟容器,创建作业对应的appM,然后AM开辟资源,启动完成后,获取hdfs上存储的资源,根据这些资源创建Map Task和Reduce Task,同时向Rs申请执行毛和reduce task的资源,然后调度器返回执行信息。appM获得执行信息后,通知NM启动该任务,然后NM启动任务,map和reduce task 获取hdfs上的共享文件数据,接下来就正式进入mapreduce阶段。map执行完,在执行reduce。