NodeManager是YARN中每个节点上的代理,它管理Hadoop集群中单个计算节点,包括与ResourceManger保持通信,监督Container的生命周期管理,监控每个Container的资源使用情况,追踪节点健康状况,管理日志和不同应用程序用到的附属服务。本文介绍了NodeManager内部实现。

Application是NodeManager中用于维护一个Application生命周期的数据结构,它的实现是ApplicationImpl,该类维护了一个Application状态机,记录了Application可能存在的各个状态以及导致状态间转换的事件,本文介绍了该状态机。

Container是NodeManager中用于维护一个Container生命周期的数据结构,它的实现是ContainerImpl,该类维护了一个Container状态机,记录了Container可能存在的各个状态以及导致状态间转换的事件,本文介绍了该状态机。

节点健康状况检测是YARN为每个NodeManager提供的机制,通过该机制,NodeManager可通过心跳机制将节点健康状况实时汇报给ResourceManager,而ResourceManager则会根据每个NodeManager的健康状况适当调整分配的任务数目。本文介绍了NodeManager如何实现节点健康状况检测。

LocalizedResource是NodeManager中用于维护一种”资源”生命周期的数据结构,它维护了一个状态机,记录了“资源”可能存在的各个状态以及导致状态间转换的事件,本文介绍了该状态机。