Hadoop2.0 | YARN工作流程

2019-07-05  本文已影响0人  icebreakeros

YARN工作流程

YARN通信协议

RPC协议是连接各个组件的“大动脉”
YARN采用的是拉式(pull-based)通信模型
任何两个需相互通信的组件之间仅有一个RPC协议
对于任何一个RPC协议,通信双方有一端是Client,另一端为Server,且Client总是主动连接Server

YARN通信协议

ApplicationClientProtocolJobClient通过该RPC协议提交应用程序、查询应用程序状态等
ResourceManagerAdministrationProtocolAdmin通过该RPC协议更新系统配置文件,比如节点黑白名单、用户队列权限等
ApplicationMasterProtocolAM通过该RPC协议向RM注册和撤销自己,并为各个任务申请资源
ContainerManagementProtocolAM通过该RPC要求NM启动或者停止Container,获取各个Container的使用状态等信息
ResourceTrackerNM通过该RPC协议向RM注册,并定时发送心跳信息汇报当前节点的资源使用情况和Container运行情况

YARN工作流程

运行YARN的应用程序主要有两类:短应用程序和长应用程序
短应用程序指在一定时间内可以运行完成并正常退出的应用程序,比如MapReduce作业
长应用程序是指不出意外,永不终止运行的应用程序,通常是一些服务,比如Storm ServiceHBase Service

当用户向YARN中提交一个应用程序后,YARN将分两个阶段运行该应用程序:
第一阶段:启动ApplicationMaster
第二阶段:由ApplicationMaster创建应用程序

YARN工作流程

多角度理解YARN

为了快速处理一个大的数据集,通常采用多线程并行编程

多角度理解YARN

资源管理系统主要功能:
对集群中各类资源进行抽象
按照一定的策略,将资源分配给应用程序或服务
采用一定的隔离机制防止应用程序或者服务之间因资源抢占而相互干扰
引入YARN这一层后,各种计算框架可各自发挥自己的优势,并由YARN进行统一管理。
目前支持的应用系统有:MapReduceSparkStormHBase

上一篇 下一篇

猜你喜欢

热点阅读