hadoop Yarn资源调度器

概述

Yarn是一个资源调度平台,负责为运算程序提供服务器资源,相当于一个分布式的操作系统平台,而MapReduce等运算程序相当于操作系统之上的应用程序

Yarn基本架构

在这里插入图片描述

YARN 主要由ResourceManager、NodeManager、ApplicationMaster、Container

ResourceManager(RM) 主要作用如下

  1. 处理客户端请求
  2. 监控NodeManager
  3. 启动或监视 ApplicationMaster
  4. 资源的分配与调度

NodeManager(NM) 主要作用如下

  1. 管理单个节点上的资源
  2. 处理来自ResourceManager的命令
  3. 处理来自ApplicationMaster的命令

ApplicationMaster(AM) 作用如下

  1. 为应用程序申请资源并分配给内部的任务
  2. 任务的监控与容错

Container

Container 是 YARM 中的资源抽象,它封装了某个节点上的多维度资源。如内存、CPU、磁盘、网络

作业提交全过程

HDFS、YARN、MapReduce三者关系

在这里插入图片描述

作业提交过程之YARN

在这里插入图片描述

作业提交过程之HDFS & MapReduce

在这里插入图片描述

作业提交全过程详解

作业提交

第1步: Client 调用 job.waitForCompletion 方法,向整个集群提交MapReduce作业
第2步: Client 向 RM 申请一个作业ID
第3步: RM 给 Client 返回该job 的资源路径和作业ID
第4步: Client 提交jar 包、切片信息和配置文件到指定的资源提交路径
第5步: Client 提交完资源后,向RM申请运行 MrAppMaster

作业初始化

第6步: 当RM 收到Client的请求后,将该job添加到容量调度器中
第7步: 某一个空调的NM领取到该job
第8步: 该NM创建Container,并产生 MrAppMaster
第9步: 下载Client 提交的资源到本地

任务分配

第10步: MrAppMaster 向RM申请运行多个MapTask任务资源
第11步: RM 将运行 MapTask 任务分配给另外两个NodeManger, 另两个NodeManger分别领取任务并创建容器

任务运行

第12步: MR 向两个接收到的任务的 NodeManger 发送程序启动脚本,这两个NodeManger 分别启动MapTask, MapTask对数据分区排序
第13步: MrAppMaster等待所有MapTask运行完毕后,向RM申请容器,运行ReduceTask
第14步: ReduceTask 向 MapTask获取相应分区的数据
第15步: 程序运行完毕后,MR会向RM申请注销自己

进度和状态更新

YARM 中的任务将其进度和状态(包括 counter) 返回给应用管理器,客户端(通过 mapreduce.client.progressmonitor.pollinterval 设置) 向应用管理器请求进度更新,展示给用户

作业完成

除了向应用管理器请求作业进度外, 客户端每 5 秒都会通过调用 waitForCompletion()来检查作业是否完成。时间间隔可以通过 mapreduce.client.completion.pollinterval 来设置

作业完成之后, 应用管理器和 Container 会清理工作状态

作业的信息会被作业历史服务器存储以备之后用户核查

资源调度器

默认调度器

目前,Hadoop 作业调度器主要有三种:FIFO、容量(Capacity Scheduler)和公平(Fair Scheduler)

Apache Hadoop3.1.3 默认的资源调度器是 Capacity Scheduler。 CDH 框架默认调度器是 Fair Scheduler

具体设置详见:yarn-default.xml 文件

<property>
 <description>The class to use as the resource scheduler.</description>
 <name>yarn.resourcemanager.scheduler.class</name>
<value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler</value>
</property>

先进先出调度器(FIFO)

FIFO 调度器(First In First Out):单队列,根据提交作业的先后顺序,先来先服务

在这里插入图片描述

优点: 简单易懂
缺点: 不支持多队列,生成环境很少使用

容量调度器(Capacity Scheduler)

容量调度器特点

在这里插入图片描述

  • 多队列: 每个队列可配置一定的资源量,每个队列采用FIFO调度策
  • 容量保证: 管理员可为每个队列设置资源最低保证和资源使用上限
  • 灵活性: 如果一个队列中的资源有剩余,可以暂时共享给哪些需要资源的队列,而一旦该队列有新的应用程序提交,则其他队列借调的资源会归还给该队列
  • 多租户: 支持多用户共享集群和多应用程序同时运行。为了防止同一个用户的作业独占队列中的资源,该调度器会对同一用户提交的作业所占资源量进行限定

容量调度器资源分配算法

在这里插入图片描述

公平调度器(Fair Scheduler)

公平调度器特点

在这里插入图片描述

公平调度器 - 缺额

在这里插入图片描述

公平调度器队列资源分配方式

在这里插入图片描述

公平调度器资源分配算法

在这里插入图片描述

公平调度器队列资源分配方式

在这里插入图片描述

在这里插入图片描述

参考资料

  • Hadoop3.x 之 Yarn资源调度器 (第十一章)
  • Hadoop3教程(二十三):Yarn的三大调度器

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/724740.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2005-2022年款福特福克斯维修手册和电路图线路图接线图资料更新

经过整理&#xff0c;2005-2022年款福特福克斯全系列已经更新至汽修帮手资料库内&#xff0c;覆盖市面上99%车型&#xff0c;包括维修手册、电路图、新车特征、车身钣金维修数据、全车拆装、扭力、发动机大修、发动机正时、保养、电路图、针脚定义、模块传感器、保险丝盒图解对…

基于JSP的高校毕业生就业满意度调查统计系统

开头语&#xff1a; 你好呀&#xff0c;我是计算机学长猫哥&#xff01;如果有相关需求&#xff0c;文末可以找到我的联系方式。 开发语言&#xff1a;JSP 数据库&#xff1a;MySQL 技术&#xff1a;JSP技术 工具&#xff1a;MyEclipse、Tomcat、MySQL 系统展示 首页 用…

超实用的新闻稿件撰写模板分享,拿来直接套用

新闻稿件撰写是一门艺术&#xff0c;需要具备敏锐的新闻嗅觉、扎实的写作功底和严谨的逻辑思维。从标题、导语、新闻事实到背景补充&#xff0c;再到后续事实&#xff0c;每一个环节都至关重要。今天伯乐网络传媒就来给大家分享超实用的新闻稿件撰写模板&#xff0c;拿来直接套…

【Java】已解决Java中的java.util.NoSuchElementException异常

文章目录 一、分析问题背景二、可能出错的原因三、错误代码示例四、正确代码示例五、注意事项 已解决Java中的java.util.NoSuchElementException异常 一、分析问题背景 java.util.NoSuchElementException是Java中常见的运行时异常&#xff0c;它通常发生在使用迭代器&#xf…

重生之 SpringBoot3 入门保姆级学习(24、场景整合 kafka 消息发送服务)

重生之 SpringBoot3 入门保姆级学习&#xff08;24、场景整合 kafka 消息发送服务&#xff09; 6.4 消息发送服务 6.4 消息发送服务 访问 kafka-ui &#xff08;注意这里需要换成你自己的服务器或者虚拟机的 IP 地址&#xff0c;虚拟机可以用局域网 192.168.xxx.xxx 的地址&…

零基础入门学用Arduino 第五部分

重要的内容写在前面&#xff1a; 该系列是以up主太极创客的零基础入门学用Arduino教程为基础制作的学习笔记。个人把这个教程学完之后&#xff0c;整体感觉是很好的&#xff0c;如果有条件的可以先学习一些相关课程&#xff0c;学起来会更加轻松&#xff0c;相关课程有数字电路…

有效粉丝不够怎么办,巨量千川助你快速涨粉,解锁更多权限

在当今的社交媒体时代&#xff0c;拥有大量的粉丝对于个人或品牌的发展至关重要。除此之外开通权限也受粉丝数量的限制&#xff08;开通橱窗带货被要求500有效粉丝&#xff0c;开蓝V也需要500粉丝&#xff0c;直播权限需要1000粉丝&#xff09;。那么怎样才能快速涨粉又对账号没…

PS系统教程23

减淡加深海绵工具 减淡工具 作用&#xff1a;提炼物体颜色 加深工具 作用&#xff1a;变暗物体颜色&#xff0c;加深物体深度 海绵工具 作用&#xff1a;修正物体饱和度&#xff0c;加大纯度 减淡工具 老套路&#xff0c;找一个图片 复制新建粘贴Ctrl键J复制图层选择减…

C语言学习之路(黑马)

文章目录 环境搭建HelloWorld代码编写代码分析执行流程 核心语法注释单行注释多行注释注释示例 关键字常量变量计算机进制数据类型标识符键盘录入 运算符算术运算符比较运算符赋值运算符自增减运算符逻辑运算符三元运算符逗号运算符运算符的优先级 流程控制语句顺序结构分支结构…

【Portswigger 学院】CORS

教程和靶场来源于 Burpsuite 的官网 Portswigger&#xff1a;Cross-origin resource sharing (CORS) - PortSwigger 跨域资源共享&#xff08;Cross-origin resource sharing&#xff0c;CORS&#xff09;是一种浏览器机制&#xff0c;允许浏览器访问不同源的资源。同源策略的作…

32.双击列表启动目标游戏

上一个内容&#xff1a;31.加载配置文件中的游戏到辅助列表 以 31.加载配置文件中的游戏到辅助列表 它的代码为基础进行修改 效果图&#xff1a; 添加列表双击事件 实现代码&#xff1a; LPNMITEMACTIVATE pNMItemActivate reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR…

送检了200多款主食冻干,花费百万后,我测评了VE、希喂、朗诺!

主食冻干真是养猫的好帮手&#xff0c;方便、易喂&#xff0c;还能为猫咪提供全面营养&#xff01;它模拟了猫咪的自然捕猎饮食&#xff0c;采用低温脱水和灭菌技术制成。这样的主食冻干不仅让铲屎官们的喂养变得轻松&#xff0c;还满足了猫咪的味蕾和营养需求。更重要的是&…

Orangepi Zero2

1、Orangepi Zero2 Orangepi Zero2 是基于全志H616的一款产品 特性&#xff1a; CPU全志H616四核64位1.5GHz高性能Cortex-A53处理器 GPU MaliG31MP2 SupportsOpenGLES1.0/2.0/3.2、OpenCL2.0 运行内存1GB DDR3(与GPU共享) 存储TF卡插槽&#xff0c;测试128G可支持、2MB SPI Fl…

【android】json

设置第potition个数据项的view的属性 成功显示数据项&#xff0c;熟悉recycleview三个方法 新建页面&#xff0c;定义适配器&#xff0c;指定使用MyViewHolder类对象保存每个数据胡view组件 padding-内部边距 bold-加粗 新建类&#xff0c;描述新闻内容 定义组件 public i…

MYSQL无法启动的修复过程

记录一次MySQ无法启动的修复过程。 1. 错误表现 今天在用python操作数据库时可能有些错误&#xff08;具体来说就是我尝试创建了一个已经存在的database&#xff09;&#xff0c;结果我发现MySQL中的那个database不存在了&#xff0c;我重启了一下电脑&#xff0c;结果mysql…

Webpack源码深入-webpack和webpack-cli

webpack源码深入-webpack和webpack-cli webpack命令工作原理如下 webpack指令 // webpack/package.json {..."mian":"lib/index.js","bin": {"webpack": "bin/webpack.js"},... }webpack指令的入口是webpack.js。 首先…

数据质量管理-规范性管理

数据质量管理简介 数据质量管理是一个持续性的管理动作&#xff0c;有些人在做数据质量管理的时候会陷入一步到位的误区&#xff0c;想要通过一个工具、平台&#xff0c;或者一套质检规则就完成整体的数据质量管理&#xff0c;而实际数据质量管理从数据接入的那一刻就需要介入…

rockchip linux sdk指定编译配置文件

SDK&#xff1a;rk3568_linux4.19_V1.4.0 硬件平台&#xff1a;RK3566 一、指定板级配置文件 板级配置文件在<SDK>/device/rockchip/rk3566_rk3568目录下。 1、方法1 ./build.sh后⾯加上板级配置⽂件&#xff0c;例如&#xff1a; ./build.sh /device/rockchip/rk3…

《数字图像处理(面向新工科的电工电子信息基础课程系列教材)》封面五年构想

禹晶、肖创柏、廖庆敏《数字图像处理&#xff08;面向新工科的电工电子信息基础课程系列教材&#xff09;》 2028年再版时&#xff0c;我要组个九宫图&#xff0c;构思中。。。

AI教育的“智”变大考,小度率先提交答卷!!

目录 01 LLM重定义“AI教师” 02 全新小度&#xff0c;换上“最强大脑” 03 智能原生&#xff1a;AI硬件破局的关键 作为继OpenAI、微软和谷歌之后&#xff0c;万众期待的最后一个尖子生&#xff0c;苹果在上周的WWDC24全球开发者大会上&#xff0c;终于交出了自己的“AI答卷…