赞
踩
Yet Another Resource Negotiator
,另一种资源判决者/调度者)进行专门的资源组管理和任务调度,而MR通过调用YRN的API实现分布式计算,减轻了MR的压力守护进程1:
Resource Manager
,一个全局的资源管理器,负责管理和分配整个集群中的计算资源守护进程2:
Node Manager
,运行在所有的节点上,是YARN在每个节点上的代理,管理集群中的单个计算节点,负责启动和监控container应用程序中Application master
application-specified
)的进程,负责管理运行在YARN上的应用程序YARN应用的运行流程如下:
client向YARN的Resource Manager
提交应用程序,包括启动Application master
的必需信息,如Application master程序、启动命令和用户程序等。
Resource manager
为该应用程序分配第一个container,并与container所在的Node manager
通信,要求Node manager
启动container并在container中运行Application master
。
Application master
首先向Resource manager
注册自己,并与Resource maneger
保持心跳。 —— 用户可以通过Resource maneger
获取应用程序的运行状态。
Application master
采用轮询的方式、通过RPC向Resource manager
申请更多的container
申请到container后,Application master
会与container所在的Node manager
建立通信,要求Node manager启动container,从而运行具体的应用程序任务
各个任务会通过RPC向Application master
上报自己的进度和运行状态,这样Application master
便可以对任务进行监控和管理
Application master
可以向Resource manager
申请新的container,以重新运行该任务Application master
,获取任务的运行状态应用程序运行完成后,Application master
向Resource manager
注销并关闭自己。这时,Application master
分配到的container,可以被Resource manager
回收
Resource maneger
Application master
:Application master
运行失败,会重启Application master
。Application master
的资源请求,并为之分配资源 ( 其实就是分配container)Node Manager
: 接收来自Node Manager
的资源汇报信息,并向Node Manager
下达管理指令 —— 这条我没有啥体会 Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。