ResourceManager(RM),RM是全局的资源管理器,负责整个系统的资源管理和分配。主要由以下两部分组成:
Yarn采用了事件驱动机制,而RM是的实现则是最好的例证。所有服务和组件均是通过中央异步调度器组织在一起的, 不同组件之间通过事件交互,从而实现了一个异步并行的高效系统。
组件名称 | 输出事件类型 | 用途 |
---|---|---|
ClientRMService | RMAppAttemptEvent | |
RMAppEvent RMNodeEvent | ||
NMLivelinessMonitor | RMNodeEvent | |
ResourceTrackerService | RMNodeEvent RMAppAttemptEvent | |
AMLivelinessMonitor | RMAppAttemptEvent | |
ContainerAllocationExpirer | SchedulerEvent |
组件名称 | 处理的事件类型 | 输出事件类型 | 用途 |
---|---|---|---|
ApplicationMasterLauncher | AMLauncherEvent | - | |
RMAppManager | RMAppManagerEvent | RMAppEvent | |
NodesListManager | NodesListManagerEvent | RMNodeEvent RMAppEvent | |
RMApp | RMAppEvent | RMAppAttemptEvent RMNodeEvent SchedulerEvent RMAppManagerEvent | |
RMAppAttempt | RMAppAttemptEvent | SchedulerEvent RMAppAttemptEvent RMAppEvent AMLauncherEvent RMNodeEvent | |
RMNode | RMNodeEvent | RMAppEvent SchedulerEvent NodesListManagerEvent RMNodeEvent | |
ResourceScheduler | SchedulerEvent | RMAppEvent RMAppAttemptEvent | |
RMContainer | RMContainerEvent | RMAppEvent RMAppAttemptEvent RMNodeEvent |