Yarn框架的一般过程

基本过程图:

 

 

  1. Clinet向ResouceManager发送Job请求

  2. ResouceManager接受到请求后在自身开启一个Container 来运行的ApplicationManager组件,ApplicationManager负责接下来的Job请求。

  3. ResourceManager(ApplicationManager)分配一个有闲置资源的NodeManager,由该NodeManager启动一个Container,并从HDFS上拷贝Job资源,然后运行ApplicationMaster作为本次Job的主节点。

  4. ApplicationMaster向ResourceManager(AppMgr)进行注册,注册之后Clinet就可以查询ResourceManager获得自己ApplicationMaster的详细信息,以后就可以和自己的ApplicationMaster直接交互。

  5. ApplicationMaster计算本次Job所需要的计算资源并向ResouceManager(ApplicationManager)请求资源路径。

  6. ResouceManager(ResourceScheduler)返回封装好的资源

  7. ApplicationMaster根据返回的资源将向各个NodeManager发送任务,开启Container,然后将 Map Task分发到各个Container中运行。

  8. ApplicationMaster实时监控各个MapTask的完成情况,当所有MapTask都完成后,重复5-7开始运行Reduce Task。(Reducer和Mapper不在同一个Container)

  9. Job完成后,ApplicationMaster向ApplicationsMgr申请注销自己。

posted @ 2019-07-11 15:48  WhoYoung  阅读(308)  评论(0编辑  收藏  举报