李林超博客
首页
归档
留言
友链
动态
关于
归档
留言
友链
动态
关于
首页
大数据
正文
02.Yarn的工作机制和作业提交过程
Leefs
2021-09-09 PM
1850℃
0条
# 02.Yarn的工作机制和作业提交过程 ### 一、Yarn的工作机制 ![02.Yarn的工作机制和作业提交过程01.jpg](https://lilinchao.com/usr/uploads/2021/09/1785682861.jpg) (1)MR程序提交到客户端所在的节点。 (2)YarnRunner向ResourceManager申请一个Application。 (3)RM将该应用程序的资源路径返回给YarnRunner。 (4)该程序将运行所需资源提交到HDFS上。 (5)程序资源提交完毕后,申请运行mrAppMaster。 (6)RM将用户的请求初始化成一个Task。 (7)其中一个NodeManager领取到Task任务。 (8)该NodeManager创建容器Container,并产生MRAppmaster。 (9)Container从HDFS上拷贝资源到本地。 (10)MRAppmaster向RM 申请运行MapTask资源。 (11)RM将运行MapTask任务分配给另外两个NodeManager,另两个NodeManager分别领取任务并创建容器。 (12)MR向两个接收到任务的NodeManager发送程序启动脚本,这两个NodeManager分别启动MapTask,MapTask对数据分区排序。 (13)MrAppMaster等待所有MapTask运行完毕后,向RM申请容器,运行ReduceTask。 (14)ReduceTask向MapTask获取相应分区的数据。 (15)程序运行完毕后,MR会向RM申请注销自己。 *来源:尚硅谷大数据之Hadoop听课笔记* ### 二、Yarn作业提交过程 ![02.Yarn的工作机制和作业提交过程02.jpg](https://lilinchao.com/usr/uploads/2021/09/741610121.jpg) client提交作业申请 - Client向RM提交作业申请 - RM根据申请内容返回相关的信息(例如根据input的路径,返回对应的文件元数据,还有作业资源的提交路径) - 客户端根据RM返回的信息生成资源文件(job.split,job.xml,app.jar)并将资源文件提交至提交路径(一般存在hdfs上面) RM处理用户请求 - RM将用户的请求打包为task,放置调度队列,根据当前yarn的调度模式进行调度 NM从队列中获取task - 创建contianer容器启动AM - 下载资源文件 AM向RM申请运行mapTask容器,RM将请求再打包为task放置调度队列 - 其他NM获取到task后会再创建contianer容器并下载资源文件,contianer中的mapTask任务由AM负责监控和调度 AM向maptask发送程序启动命令 contianer运行mapTask - 当各节点mapTask运行完毕后,AM重复4的步骤(这次是reduceTask) 程序运行完成后,AM向RM注销自己 *附文章链接地址:* *jianshu.com/p/56f3340b54c6*
标签:
Hadoop
,
Yarn
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:
https://lilinchao.com/archives/1416.html
上一篇
01.Yarn基础架构
下一篇
03.Yarn调度器
评论已关闭
栏目分类
随笔
2
Java
326
大数据
229
工具
31
其它
25
GO
47
NLP
4
标签云
JVM
序列化和反序列化
GET和POST
Hadoop
NIO
Jquery
国产数据库改造
Zookeeper
gorm
栈
正则表达式
Spark
Azkaban
Nacos
SpringCloud
HDFS
Spark RDD
链表
数学
MyBatis-Plus
Elastisearch
Quartz
Golang基础
Redis
FastDFS
JavaSE
容器深入研究
MyBatisX
Spring
MySQL
友情链接
申请
范明明
庄严博客
Mx
陶小桃Blog
虫洞
评论已关闭