江山疯宇晴

HadoopSourceAnalyse --- Nodemanager Container request handler

Overview

Container 是Hadoop中运行任务的地方,当Resourcemanager收到一任务请求后,会向nodemanager 请求一个Container 来运行ApplicationMaster, ApplicationMaster运行起来之后,会继续向Resourcemanager请求新的container来运行任务, 当container 完成任务之后,ApplicationMaster会释放相应的container, 当任务完成之后,ApplicationMaster会释放自己 运行的Container;

StartContainerRequest handle


 图 2-1

图 2-2

ContainerManager 收到StartContainer Request 之后 ,先进行运行时环境检查,如果一切都没有问题,则会在本建立一个container 和 一个Application FSM, 并启动Applicateion FSM,

Start Application

dispatcher.getEventHandler().handle(
          new ApplicationInitEvent(applicationID, container
              .getLaunchContext().getApplicationACLs()));

StopContainerRequest Handle

该 request的处理过程与Start类似,仅向container发送killevent, 后续处理由containerFSM 完成,container 成功停止之后,会重新更新当前node的状态 信息:
nodeStatusUPdater.sendOutOfBandHeartBeat();


posted on 2013-05-07 16:28  江山疯宇晴  阅读(151)  评论(0编辑  收藏  举报

导航