YARN架构简介

从Hadoop的0.23版本,MapReduce进行了全面的彻底的变革,也就是我们今天看到的MapReduce 2.0或者我们也可以叫它YARN.

老版本的JobTracker有两个主要的功能:资源管理、任务调度与监控。Yarn的思路就是把这两个功能进行拆分,分别交给两个独立进程进行维护。这两个进程分别是ResourceManager进程和ApplicationMaster进程。ApplicationMaster进程是每个Job一个。

RM和NM两种角色构成了Hadoop集群的计算框架。RM对所有Job的资源申请具有最终的决定权。

ApplicationMaster进程负责从RM获得资源,并与NM一起执行监控tasks.

RM有两个主要的组件:Sheduler、ApplicationManager

Sheduler负责给运行的程序分配资源(存储容量、队列等)。Sheduler只管调度,不管应用程序的状态。即便是应用程序因为种种原因失败了,也和他没有关系。Sheduler根据每个程序对资源的申请来进行调度。resourceContainer是一个新抽象的概念,它是内存、CPU、磁盘、网络等资源的抽象集合,第一版只支持了内存。Sheduler以resourceContainer为单位进行资源分配。

Scheduler在设计上采用了插件的策略,CapacityScheduler 和FairScheduler
就是Scheduler的两个插件。类似于Eclipse,扩展起来容易吧?

CapacityScheduler 支持分层次队列,该功能使得它可以分配更多的集群资源(分配那些未来会被释放的资源)

ApplicationsManager 负责接收提交的任务,找到执行任务的ApplicationMaster
的容器,在容器失败的情况下,对容器进行重启。

NodeManager 是个客户端程序,提供ApplicationsManager
运行需要的容器,并对所在机器的资源(CPU、内存、磁盘、网络)进行监控,并把监控结果汇报给 ResourceManager/Scheduler.

ApplicationMaster 从Scheduler获得资源,跟踪任务的状态和执行进度。

MRV2与老版本的稳定版的MR保持兼容,老版本的MR程序重新编译一下在新的集群中就可以运行了。

时间: 2024-11-03 03:25:43

YARN架构简介的相关文章

Hadoop MapReduceV2(Yarn) 框架简介[转]

对于业界的大数据存储及分布式处理系统来说,Hadoop 是耳熟能详的卓越开源分布式文件存储及处理框架,对于 Hadoop 框架的介绍在此不再累述,读者可参考 Hadoop 官方简介.使用和学习过老 Hadoop 框架(0.20.0 及之前版本)的同仁应该很熟悉如下的原 MapReduce 框架图: 图 1.Hadoop 原 MapReduce 架构 从上图中可以清楚的看出原 MapReduce 程序的流程及设计思路: 首先用户程序 (JobClient) 提交了一个 job,job 的信息会发送

浅出深入MySQL-MySQL架构之架构简介

MySQL架构简介 MySQL服务器由SQL层和存储引擎层构成.SQL层功能包括权限判断.SQL解析和查询缓存处理等,存储引擎层则是完成底层数据库数据存储操作.如下图: SQL层可分为三层,分别是连接/线程处理层.查询缓存和查询分析器层.优化器层.连接/线程处理层主要用来处理客户端的请求.身份验证和数据库安全性验证等.查询缓存和查询分析器层是SQL层里头的核心部分,负责查询的解析.优化.缓存,以及所有内置的函数.存储过程.触发器.视图等.优化器主要负责存储和获取所有存储在数据库中的数据.

openstack架构简介J版(更新中)

title : OPENSTACK架构简介 openstack的发展及历史 openstack是什么? OpenStack是一个美国国家航空航天局和Rackspace合作研发的云端运算?软件,以Apache许可证授权,并且是一个自由软件和开放源代码项目. 通俗点来讲,openstack就是一个用python编写的linux软件,openstack是一个开源云平台. openstack能干嘛? openstack最基础的功能就是产生云主机(vm虚拟机),用这些虚拟机可以做你想做的很多事.例如产生一

自己动手写处理器之第一阶段(3)——MIPS32指令集架构简介

将陆续上传本人写的新书<自己动手写处理器>(尚未出版),今天是第四篇,我尽量每周四篇 1.4 MIPS32指令集架构简介 本书设计的处理器遵循MIPS32 Release 1架构,所以本节介绍的MIPS32指令集架构指的就是MIPS32 Release 1. 1.4.1 数据类型 指令的主要任务就是对操作数进行运算,操作数有不同的类型和长度,MIPS32提供的基本数据类型如下. 位(b):长度是1bit. 字节(Byte):长度是8bit. 半字(Half Word):长度是16bit. 字(

淘宝高性能可伸缩平台架构简介 (转)

一 应用无状态(淘宝session框架) 假如在session中保存了大量与客户端的状态信息,保存状态信息的server宕机时 通常通过集群解决,不仅有负载均衡,更重要的是要有失效恢复failover tomcat用集群节点广播复制,jboss用配对复制等session状态复制策略,但严重影响系统的伸缩性,不能通过增加更多的机器达到良好的水平伸缩 因为集群节点间session通信随着节点的增多而开销增大,因此要想做到应用本身的伸缩性,要保证应用无状态,这样集群中的各个节点来说都是相同的,使系统更

yarn架构——本质上是在做解耦 将资源分配和应用程序状态监控两个功能职责分离为RM和AM

Hadoop YARN架构解读 原Mapreduce架构 原理架构图如下: 图 1.Hadoop 原 MapReduce 架构 原 MapReduce 程序的流程:首先用户程序 (JobClient) 提交了一个 job,job 的信息会发送到 Job Tracker 中,Job Tracker需要与集群中的机器定时通信 (heartbeat), 需要管理哪些程序应该跑在哪些机器上,需要管理所有 job 失败.重启等操作.TaskTracker 是 Map-reduce 集群中每台机器都有的一个

大数据技术hadoop入门理论系列之二&mdash;HDFS架构简介

HDFS简单介绍 HDFS全称是Hadoop Distribute File System,是一个能运行在普通商用硬件上的分布式文件系统. 与其他分布式文件系统显著不同的特点是: HDFS是一个高容错系统且能运行在各种低成本硬件上: 提供高吞吐量,适合于存储大数据集: HDFS提供流式数据访问机制. HDFS起源于Apache Nutch,现在是Apache Hadoop项目的核心子项目. HDFS设计假设和目标 硬件错误是常态 在数据中心,硬件异常应被视作常态而非异常态. 在一个大数据环境下,

鸟哥的 Linux 私房菜(服务器) 第三章 局域网络架构简介 第四章 连上 Internet

鸟哥的 Linux 私房菜(服务器) 第三章 局域网络架构简介 第四章 连上 Internet [TOC] 3.1 局域网络的联机 3.1.1 局域网络的布线规划 3.1.1-1 Linux 直接联网-与 PC 同地位 3.1.1-2 Linux 直接联网-与一般 PC 分开网域 3.1.1-3 Linux 直接联网-让 Linux 直接管理 LAN 3.1.1-4 Linux 放在防火墙后-让 Linux 使用 Private IP 3.2 本书使用的内部联机网络参数与通讯协议 3.2.1 联

理解Hadoop YARN架构

1. 介绍 YARN(Yet Another Resource Negotiator)是一个通用的资源管理平台,可为各类计算框架提供资源的管理和调度. 其核心出发点是为了分离资源管理与作业调度/监控,实现分离的做法是拥有一个全局的资源管理器(ResourceManager,RM),以及每个应用程序对应一个的应用管理器(ApplicationMaster,AM),应用程序由一个作业(Job)或者Job的有向无环图(DAG)组成. YARN可以将多种计算框架(如离线处理MapReduce.在线处理的