Hadoop之应用程序运行过程(面试)

Hadoop2.0,YARN也采用了Master/Slave结构。

Master-ResourceManager:负责整个集群资源的管理与调度,主要这么几个功能包括:

处理来自客户端的请求

启动管理ApplicationMaster,接收来自ApplicationMaster的资源申请

管理和接受来自NodeManager的资源汇报信息

Slave-NodeManager:负责管理Hadoop集群中单个计算节点,主要

从ApplicationMaster接收有关管理Container的命令(启动,停止Container等)

向ResourceManager汇报各个Container运行状态。

注:Container是YARN中资源的抽象(就是封装了类似于某个机器上1个cpu,2g内存等;然后AM申请到这些资源,就到某台机器上运行任务)

运行过程

简版:

用户提交应用程序到RM上

RM分配一个Container启动AM

AM向RM注册,并开始申请资源,以在NM上启动任务

NM启动任务,并且各个任务向AM汇报状态

所有任务完成,AM向RM注销自己

详版:

用户将应用程序提交到ResourceManager上;

ResourceManager为该应用程序分配第一个Container,并与对应的NodeManager通信并在这个Container中启动应用程序的ApplicationMaster;

ApplicationMaster向ResourceManager注册自己并与之通信(用户就可以通过ResourceManager查看程序状态),为内部要执行的任务申请资源,申请到资源后则与对应的NodeManager通信,以启动内部任务,AM并监听这些任务。

NodeManager为任务设置好运行环境(包括环境变量,jar包等),将命令写到脚本中并通过脚本启动任务。

各个任务通过某个RPC协议向ApplicationMaster汇报自己的运行状态。

应用程序运行完成后,ApplicationMaster则向ResourceManager注销自己。

参考:董的博客
这里写图片描述
2015年10月22日晚

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值