Yarn运行流程

  1. 用户向ResourceManager中提交应用程序,其中包括ApplicationMaster程序。

  2. ResourceManager为ApplicationMaster分配一个 Container(分配后Container由NodeManager创建),然后NodeManager在 Container中运行ApplicationMaster。

  3. ApplicationMaster首先向ResourceManager注册,

  4. ApplicationMaster为各个任务申请资源,并监控它的运行状态,直到运行结束。

  5. ApplicationMaster申请成功后,ResourceManager为该应用程序的所有任务都分配一个Container

  6. ApplicationMaster与目标NodeManager通信,请求NodeManager创建Container,

  7. 然后NodeManager在 Container中运行其任务。

  8. 各个任务通过某个RPC协议向ApplicationMaster汇报自己的状态和进度,以让 ApplicationMaster 随时掌握各个任务的运行状态,从而可以在任务失败时重新启动任务。在应用程序运行过程中,用户可以随时通过 RPC向 ApplicationMaster查询应用程序的当前运行状态。

  9. 应用程序运行完成后,ApplicationMaster向 ResourceManager注销并关闭自己,Container也会被回收。

posted @ 2023-04-08 23:28  来个煎饼  阅读(122)  评论(0编辑  收藏  举报