2023学年完整公开课版高可靠性Yarn2_第1页
2023学年完整公开课版高可靠性Yarn2_第2页
2023学年完整公开课版高可靠性Yarn2_第3页
2023学年完整公开课版高可靠性Yarn2_第4页
2023学年完整公开课版高可靠性Yarn2_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

高可靠性Yarn(二)主要内容2Yarn的工作原理Yarn的优点Yarn的基本缺陷Yarn

HA3一、Yarn的工作原理4Yarn的工作原理作业提交作业初始化任务运行任务分配进度和状态更新作业完成5Yarn的工作原理图

6作业提交

client调用job.waitForCompletion方法,向整个集群提交MapReduce作业。新的作业ID(应用ID)由资源管理器分配。作业的client核实作业的输出,计算输入的split,将作业的资源(包括Jar包,配置文件,split信息)拷贝给HDFS。最后,通过调用资源管理器的submitApplication()来提交作业。7作业初始化

当资源管理器收到submitApplication()的请求时,就将该请求发给调度器(scheduler),调度器分配container,然后资源管理器在该container内启动应用管理器进程,由节点管理器监控(第5a和5b步)。

MapReduce作业的应用管理器是一个主类为MRAppMaster的Java应用。其通过创造一些bookkeeping对象来监控作业的进度,得到任务的进度和完成报告(第6步)。然后其通过分布式文件系统得到由客户端计算好的输入split(第7步)。然后为每个输入split创建一个map任务,根据mapreduce.job.reduces创建reduce任务对象。8任务分配

如果作业很小,应用管理器会选择在其自己的JVM中运行任务。如果不是小作业,那么应用管理器向资源管理器请求container来运行所有的map和reduce任务。这些请求是通过心跳来传输的,包括每个map任务的数据位置,比如存放输入split的主机名和机架(rack).调度器利用这些信息来调度任务,尽量将任务分配给存储数据的节点,或者退而分配给和存放输入split的节点相同机架的节点。9任务运行

当一个任务由资源管理器的调度分配给一个container后,应用管理器通过联系节点管理器来启动container。任务由一个主类为YarnChild的Java应用执行。

在运行任务之前首先本地化任务需要的资源,比如作业配置,JAR文件,以及分布式缓存的所有文件。最后,运行map或reduce任务。 YarnChild运行在一个专用的JVM中,但是YARN不支持JVM重用。10进度和状态更新

YARN中的任务将其进度和状态(包括counter)返回给应用管理器,客户端每秒(通过gressmonitor.pollinterval设置)向应用管理器请求进度更新,展示给用户。11作业完成

除了向应用管理器请求作业进度外,客户端每5分钟都会通过调用waitForCompletion()来检查作业是否完成。时间间隔可以通过pletion.pollinterval来设置。作业完成之后,应用管理器和container会清理工作状态,OutputCommiter的作业清理方法也会被调用。作业的信息会被作业历史服务器存储以备之后用户核查。12二、Yarn的优点13Yarn的优点与旧MapReduce相比,YARN采用了一种分层的集群框架,具有以下几种优势。

1)Hadoop2.0提出了HDFSFederation;它让多个NameNode分管不同的目录进而实现访问隔离和横向扩展。对于运行中NameNode的单点故障,通过NameNode热备方案(NameNodeHA)实现。

2)YARN通过将资源管理和应用程序管理两部分剥离开来,分别由ResourceManager和ApplicationMaster进程来实现。其中,ResouceManager专管资源管理和调度,而ApplicationMaster则负责与具体应用程序相关的任务切分、任务调度和容错等。

3)YARN具有向后兼容性,用户在MR1上运行的作业,无需任何修改即可运行在YARN之上。

14Yarn的优点4)对于资源的表示以内存为单位(在目前版本的Yarn中没有考虑CPU的占用),比之前以剩余slot数目为单位更合理。5)支持多个框架,YARN不再是一个单纯的计算框架,而是一个框架管理器,用户可以将各种各样的计算框架移植到YARN之上,由YARN进行统一管理和资源分配,由于将现有框架移植到YARN之上需要一定的工作量,当前YARN仅可运行MapReduce这种离线计算框架。6)框架升级容易,在YARN中,各种计算框架不再是作为一个服务部署到集群的各个节点上(比如MapReduce框架,不再需要部署JobTracker、TaskTracker等服务),而是被封装成一个用户程序库(lib)存放在客户端,当需要对计算框架进行升级时,只需升级用户程序库即可。15三、Yarn的基本缺陷16Yarn的基本缺陷 MapReduce的第一个版本既有优点也有缺点。MRv1是目前使用的标准的大数据处理系统。但是,这种架构存在不足,主要表现在大型集群上。当集群包含的节点超过4,000个时(其中每个节点可能是多核的),就会表现出一定的不可预测性。其中一个最大的问题是级联故障,由于要尝试复制数据和重载活动的节点,所以一个故障会通过网络泛洪形式导致整个集群严重恶化。

但MRv1的最大问题是多租户。随着集群规模的增加,一种可取的方式是为这些集群采用各种不同的模型。MRv1的节点专用于Hadoop,所以可以改变它们的用途以用于其他应用程序和工作负载。当大数据和Hadoop成为云部署中一个更重要的使用模型时,这种能力也会增强,因为它允许在服务器上对Hadoop进行物理化,而无需虚拟化且不会增加管理、计算和输入/输出开销。17四、yarnHA18Yarn

HA架构图19YarnHA

ResourceManager由一对分别处于Active和Standby状态的ResourceManager组成,它使用基于Zookeeper的选举算法来决定ResourceManager的状态。其中,ZKFC仅为ResourceManager的一个进程服务,不是单独存在的(区别于HDFS,它是独立

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论