前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Yarn快速系列入门(2) | Yarn的运行与工作流程

Yarn快速系列入门(2) | Yarn的运行与工作流程

作者头像
不温卜火
发布2020-10-28 15:23:48
9230
发布2020-10-28 15:23:48
举报
文章被收录于专栏:不温卜火

本篇博文,博主为大家介绍Yarn的运行流程。

1
1

一. 运行流程

2
2
  • 1、client向RM提交应用程序,其中包括启动该应用的ApplicationMaster的必须信息,例如ApplicationMaster程序、启动ApplicationMaster的命令、用户程序等。
  • 2、ResourceManager启动一个container用于运行ApplicationMaster。
  • 3、启动中的ApplicationMaster向ResourceManager注册自己,启动成功后与RM保持心跳。
  • 4、ApplicationMaster向ResourceManager发送请求,申请相应数目的container。
  • 5、申请成功的container,由ApplicationMaster进行初始化。container的启动信息初始化后,AM与对应的NodeManager通信,要求NM启动container。
  • 6、NM启动启动container。
  • 7、container运行期间,ApplicationMaster对container进行监控。container通过RPC协议向对应的AM汇报自己的进度和状态等信息。
  • 8、应用运行结束后,ApplicationMaster向ResourceManager注销自己,并允许属于它的container被收回。

二. 工作流程

3
3
  • (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申请注销自己。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/04/30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一. 运行流程
  • 二. 工作流程
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档