yarn的架构设计

Posted xuziyu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了yarn的架构设计相关的知识,希望对你有一定的参考价值。

注释:

mr job执行流程
mr on yarn架构
yarn架构设计

这三种叫法是同一个问题

YARN =Yet Another Resource Negotiator

1.用户向yarn提交应用程序(job),
其中包括applicationMaster程序、
启动applicationMaster命令等

2.RM为该job分配第一个容器,
并与对应的NM通信,要求它在
这个容器中去启动job的MR applicationMaster程序。

3.applicationMaster首先向Applications Manager注册,
用户就可以直接在web界面查看job的整个运行状态
和日志。

4.applicationMaster向Resource Scheduler ,
采用轮询的方式通过RPC协议去申请和领取资源列表

5.一旦applicationMaster申请到资源的后,便于对应的NM节点通信,要求启动任务。

6.NM为任务task设置好运行环境(环境变量、jar包等),将任务的启动命令写在一个脚本文件中,
并通过这个脚本【启动任务】;

7.各个task通过rpc向applicationMaster汇报自己的状态和进度。
以让applicationMaster随时掌握各个任务的运行状态,从而可以在任务运行时重新启动任务。
则web界面可以实时查看job的当前的运行状态。

8.job运行完成后,applicationMaster向RM注销并关闭自己。

2个阶段:
2.1 启动applicationMaster
2.2 由applicationMaster创建job,为它上去
资源,并监控它的整个运行过程,直到运行完成。

技术图片

技术图片

以上是关于yarn的架构设计的主要内容,如果未能解决你的问题,请参考以下文章

架构设计-架构设计原则

系统架构设计师第七章 软件架构设计

程序员架构修炼:架构设计概要,业务应用技术数据架构

企业架构设计实战技术架构设计指南

企业架构设计实战应用架构设计

什么是架构 | 企业系统的架构设计方法