Yarn资源调度
简介
yarn是hadoop集群当中的资源管理系统模块,管理集群当中的资源(主要是服务器的各种硬件资源,包括CPU,内存)以及运行在yarn上面的各种任务。
- 一级调度管理:
计算资源管理(CPU,内存,网络IO,磁盘)
App生命周期管理 (每一个应用执行的情况,都需要汇报给ResourceManager) - 二级调度管理:
任务内部的计算模型管理 (AppMaster的任务精细化管理)
多样化的计算模型
主要组件介绍与作用
主要组件
- ResourceManager:yarn集群的主节点,主要用于接收客户端提交的任务,并对资源进行分配
- NodeManager:yarn集群的从节点,主要用于任务的计算
- ApplicationMaster:当有新的任务提交到ResourceManager的时候,ResourceManager会在某个从节点nodeManager上面启动一个ApplicationMaster进程,负责这个任务执行的资源的分配,任务的生命周期的监控等
- Container:资源的分配单位,ApplicationMaster启动之后,与ResourceManager进行通信,向ResourceManager提出资源申请的请求,然后ResourceManager将资源分配给ApplicationMaster,这些资源的表示,就是一个个的container
- JobHistoryServerÿ