Yarn是Hadoop的资源管理器,它是一个通用的资源管理系统,为上层应用提供统一的资源管理和调度,这里展示一张YARN的官方架构图,各位可以看一下。
接下来让我们看看架构图中出现的概念
Container(容器)是YARN中的资源抽象,它封装了某个节点上的多维度资源。YARN会为每个任务分配Container。
ResoureManager(资源管理器)负责整个系统的资源分配和管理,是一个全局资源管理器,主要有两个组件构成:调度器(Scheduler)和应用程序管理器(ApplicationManager)
NodeManager(节点管理器)是每个节点上的资源和任务管理器。它定时向ResoureManager汇报本节点上的资源使用情况和各个Container的运行状态,接受并处理来自ApplicationManager的Container启动/停止等请求
ApplicationManager(主应用),用户提交的每个应用程序均包含一个AM,应用程序里的“老大”,其主要功能包括以下三点:负责程序内部各阶段的资源申请,监督程序的执行情况,与NodeManager协同工作完成任务的执行和监控。
程序提交YARN的交互流程
这张是YARN程序提交时的交互流程
接下来让我们看一下YARN资源调度器Scheduler
第一个看看FIFO Scheduler
第二个是Capacity Scheduler
第三个是Fair Scheduler
标签:Container,Hadoop,Yarn,节点,YARN,Scheduler,管理器,资源管理 From: https://www.cnblogs.com/feng-233/p/16795388.html