一、YARN基本集群架构
二、各个组件的功能
ResourceManager:
全局的资源管理器,整个集群只有一个,负责集群资源的统一管理和调度分配。
功能:
处理客户端请求
启动/监控Application Master
监控NodeManager
资源分配与调度
NodeManager:
整个集群有多个,负责单节点资源管理和使用。
功能:
单个节点上的资源管理和任务管理(监视Container的资源使用情况,不会监视任务)
向ResourceManager汇报
处理Application Master的命令
Task:
应用程序的具体执行任务
Container:
在YARN中资源分配的基本单位,封存了CPU和
内存资源的一个容器,相当于一个Task运行环境的抽象。
一个程序所需的Container分为两种:运行于ApplicationManager的和运行各类Task的。前者类似于是向计算机要整个程序所需要的资源,后者是向ResourceManager要资源
功能:
对任务运行环境的抽象
描述一系列信息
任务运行资源(节点,内存,cpu)
任务启动命令
Application Master:
应用程序管理员,主要负责单个应用程序的管理(集群中可能同时有多个应用程序在运行,每个应用程序都有各自的Application Master)
功能:
为应用程序向ResourseManager申请资源(CPU、内存)
将资源分配给所管理的应用程序的Task
启动和监视Task的运行状态和运行进度
关闭并释放自己的Container