Hadoop YARN功能介绍--资源管理、调度任务-CSDN博客
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
Hadoop YRAN介绍
YARN是一个通用资源管理系统平台和调度平台可为上层应用提供统一的资源管理和 调度。
他的引入为集群在利用率、资源统一管理和数据共享等方面带来了好处。
1.资源管理系统
集群的硬件资源和程序运行无关比如内存、cup
2.调度平台
资源如何分配
3.通用
支持各种计算程序
YARN架构、组件
ResourceManager(物理层面集群
RM是YARN集群的主角色决定系统中所有应用之间资源分配的最终权限即最终仲裁者。
NodeManager
YARN的从角色一个机器上一个负责管理本机器上的计算机资源。
AplicationMasterApp层面集群
用户提交均包含一个AM应用程序的老大负责程序的内部各阶段的资源申请监督程序的执行情况
Client
Contairner容器资源的抽象
程序提交YARN集群交互流程
MR作业提交 Clinet—>RM
资源的申请MrAppMaster-->RM
MR作业状态汇报Container-->Container
节点的状态汇报 NM--RM、
当用户提交向YARN中提交了一个应用程序之后YRAN将分为两个阶段该应用程序
第一个阶段客户端申请资源启动运行本次程序的ApplicationMaster
第二个阶段是由ApplicationMaster根据本次程序内部情况为它申请资源并监控整个运行过程。直到运行完成
第三阶段ApplicationMaster启动成功之后首先向ResourceManager注册并保持通信这样用户通过ResourceManager查看应用程序运行状态
第四阶段AM为本次程序内部的各个TASK任务向RM申请资源并监控他的运行状态
第五个阶段一旦ApplicationMAster申请到资源后便与对应的NodeMAster通信要求启动任务
第六阶段NodeManager为任务设置好运行环境后将任务启动命令写到一个脚本中并通过运行改脚本启动任务。
第七个阶段各个任务通过RPC协议向ApplicationMaster汇报自己的状态和进度
第八个阶段应用程序 运行完成后ApplicationMaster向ResourceManager注销并关闭自己
YARN资源调度器
FIFOSchedule先进先出调度器Capacity Scheduler容量调度器Fair Schedule公平调度器
Apache版本默认使用Capacity Schedule调度器
如果需要使用其他的调度器 可以在Yarn--site.xml中的yarn.Resource.Schedule.class 进行配置