




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、YarnYarn及其产生背景Yarn及其产生背景Yarn基础架构Yarn工作流程Yarn调度详解总结YARN 简单介绍Yarn(Yet Another Resource Negotiator): Hadoop 的新统一资源管理框架。YANR本质上是一个资源统一管理系统,将各种框架运行在YARN之上,可以实现框架的资源统一管理和分配,使他们共享一个集群,而不是“一个框架一个集群”,这可大大降低运维成本和硬件成本。Yarn 产生背景 资源利用率Yarn 产生背景 运维成本与资源共享运维成本 如果采用“一个框架一个集群”的模式,则可能需要多个管理员管理这些集群,进而增加运维成本,而共享模式通常需要少
2、数管理员即可完成多个框架的统一管理。 数据共享 随着数据量的暴增,跨集群间的数据移动不仅需花费更长的时间,且硬件成本也会大大增加,而共享集群模式可让多种框架共享数据和硬件资源,将大大减小数据移动带来的成本YARNYarn基础架构Yarn及其产生背景Yarn基础架构Yarn工作流程Yarn调度详解总结YARN 基础架构Yarn 基本组件Client:主要用来提交任务请求,查询任务状态。ResourceManager(RM):主要接收客户端任务请求,接收和监控NodeManager(NM)的资源情况汇报,负责资源的分配与调度,启动和监控ApplicationMaster(AM)。NodeManag
3、er:主要是节点上的资源管理,启动Container运行task计算,上报资源、container情况给RM和任务处理情况给AM。ApplicationMaster:主要是单个Application(Job)的task管理和调度,向RM进行资源的申请,向NM发出launchContainer指令,接收NM的task处理状态信息。Resource Manager整个集群只有一个,负责整个集群资源的管理和调度。详细功能处理客户端请求启动/监控ApplicationMaster监控NodeManager资源分配与调度 Resource ManagerNode Manager负责节点上的资源管理和任务
4、管理。处理来自ResourceManager的命令。处理来自ApplicationMaster的命令。整个集群有多个,负责单个节点的资源管理和使用。详细功能Node ManagerNode Manager事件Application Master数据切分。为应用程序申请资源,并进一步分配给内部任务。任务监控与容错。每个应用有一个,负责应用程序的管理。详细功能ContainerContainer任务运行环境(节点、内存、cpu等)。任务启动命令。任务运行环境。每个任务对应一个,是对任务运行环境的抽象。描述信息Yarn工作流程Yarn及其产生背景Yarn基础架构Yarn工作流程Yarn调度详解总结Y
5、arn工作流程Yarn工作流程1、用户向YARN中提交应用程序,其中包括ApplicationMaster(AM)程序,启动AM的命令,用户程序等。 2、ResourceManger(RM)为该程序分配第一个Container,并与对应的NodeManger通讯,要求它在这个Container 中启动应用程序AM。 3、AM首先向RM注册,这样用户可以直接通过RM查看应用程序的运行状态,然后将为各个任务申请资源,并监控 它的运行状态,直到运行结束,重复4-7的步骤。 4、AM采用轮询的方式通过RPC协议向RM申请和领取资源。 5、一旦AM申请到资源后,便与对应的NM通讯,要求它启动任务。 6、
6、NM为任务设置好运行环境(包括环境变量、JAR包、二进制程序等)后,将任务启动命令写到一个脚本中,并通过 运行该脚本启动任务。 7、各个任务通过某个RPC协议向AM汇报自己的状态和进度,以让AM随时掌握各个任务的运行状态,从而可以在任务 失败的时候重新启动任务。 8、应用程序运行完成后,AM向RM注销并关闭自己。 资源申请流程Node Managent ServiceResourceSchedulerResource ManagerNodeManagerApplicationMasterAssignedcontainersTaskTaskTask1. NodeHeartbeat2. respo
7、nse3. Noade_Update4. Scheduling and allocate resource5. AppMaster Heartbeat 6. Containers as response 7. Run tasks in containersMap-Reduce应用示例 将计算过程分为两个阶段,Map和Reduce Map 阶段并行处理输入数据 Reduce阶段对Map结果进行汇总 Shuffle连接Map和Reduce两个阶段 Map Task将数据写到本地磁盘 Reduce Task从每个Map Task上读取一份数据Map-Reduce应用示例Yarn调度详解Yarn及其产
8、生背景Yarn基础架构Yarn工作流程Yarn调度详解总结DRF调度算法DRF Algorithm is a max-min fairness scheduling Algorithm (Paper-Dominant Resource Fairness: Fair Allocation of Multiple Resource Types”), only support CPU and MEM now Plug-in Scheduler in YARNFIFOFair SchedulerCapacity SchedulerFair/Capacity Scheduler are both bes
9、t fit schedulerYARN 调度器调度器维护一群队列的信息。用户可以向一个或者多个队列提交应用。每次NM心跳的时候,调度器,根据一定的规则选择一个队列,再在队列上选择一个应用,尝试在这个应用上分配资源。调度器在分配过程中优先匹配本地资源是申请请求,其次是同机架的,最后的任意机器的。双层调度器上层是一个非常轻量的调度系统,负责资源分配,但不侵入应用的调度策略下层是具体某个应用程序的调度器,如hadoop, storm, spark, mpi等支持资源预留 如果资源不足,调度器会保留资源请求,待资源足够的时候优先分配资源。Yarn 调度算法FifoScheduler:最简单的调度器,按
10、照先进先出的方式处理应用。只有一个队列可提交应用,所有用户提交到这个队列。可以针对这个队列设置ACL。没有应用优先级可以配置。CapacityScheduler:可以看作是FifoScheduler的多队列版本。每个队列可以限制资源使用量。FairScheduler:多队列,多用户共享资源。资源抢占特性,是指调度器能够依据公平资源共享算法,计算每个队列应得的资源,将超额资源的队列的部分容器释放掉的特性。Capacity SchedulerYahoo开发的适合共享环境的调度器,支持多用户多队列管理,每个队列可以配置资源量,也可限制每个用户和每个队列的并发运行作业数量,也可限制每个作业使用的内存量
11、;每个用户的作业有优先级,在单个队列中,作业按照先来先服务(实际上是先按照优先级,优先级相同的再按照作业提交时间)的原则进行调度。特性:1. 计算能力保证。支持多个队列,某个作业可被提交到某一个队列中。每个队列会配置一定比例的计算资源,且所有提交到队列中的作业共享该队列中的资源。2. 灵活性。空闲资源会被分配给那些未达到资源使用上限的队列,当某个未达到资源的队列需要资源时,一旦出现空闲资源资源,便会分配给他们。3. 支持优先级。队列支持作业优先级调度(默认是FIFO)4. 多重租赁。综合考虑多种约束防止单个作业、用户或者队列独占队列或者集群中的资源。5. 基于资源的调度。 支持资源密集型作业,
12、允许作业使用的资源量高于默认值,进而可容纳不同资源需求的作业。不过,当前仅支持内存资源的调度。Fair SchedulerFacebook开发的适合共享环境的调度器,支持多用户多分组管理,每个分组可以配置资源量,也可限制每个用户和每个分组中的并发运行作业数量;每个用户的作业有优先级,优先级越高分配的资源越多。特性:1. 资源公平共享:在每个队列中,Fair Scheduler可选择按照FIFO、Fair或DRF策略为应用程序分配资源。Fair策略即平均分配,默认情况下,每个队列采用该方式分配资源2. 支持资源抢占:当某个队列中有剩余资源时,调度器会将这些资源共享给其他队列,而当该队列中有新的应用程序提交时,调度器要为它回收资源。为了尽可能降低不必要的计算浪费,调度器采用了先等待再强制回收的策略,即如果等待一段时间后尚有未归还的资源,则会进行资源抢占;从那些超额使用资源的队列中杀死一部分任务,进而释放资源3. 负载均衡:Fair Scheduler提供了一个基于任务数的负载均衡机制,该机制尽可能
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国血浆假牙市场调查研究报告
- 连带担保借贷合同范本
- 宜昌精装修房屋租赁合同范本
- 物业四害消杀安全物业四害消杀合同范本
- 餐厅后厨承包合同范本
- 超市特许经营合同范本
- 新能源汽车居间服务合同
- 旅游行业应急预案演练计划
- 高考满分作文常见误区及解决方案
- 食品加工厂安全卫生保障措施
- 医疗机构维修申请单
- 部编版小学六年级语文下册全册教案(详案)
- 钉钉品牌设计规范手册
- 砂土袋挡墙施工方案
- 住院患者长嘱口服药发药流程 内科
- 少儿绘画之《水粉画葡萄》
- GB∕T 19924-2021 流动式起重机 稳定性的确定
- ACUSONX150西门子彩色多普勒超声系统
- 中国青年气候意识与行为调研报告2020
- M701F燃气轮机控制与保护
- 《物理化学》电子教案(上册)(共84页)
评论
0/150
提交评论