Yarn架构基本概况(一)

1)引言

针对MRv1在扩展性,可靠性,资源利用率和多框架的支持上存在着明显的不足,进而诞生了下一代的MapReduce的计算框架MapReduce Version2,MRV1中有一个很大的问题就是把资源管理和作业调度都扔给了JobTracker,造成了严重的单点瓶颈问题,所有MRV2主要在这一点上做了改进,他将资源管理模块构建成了一个独立的通用系统叫做Yarn,一下子MRV2的核心从MapReduce转到了Yarn上。后面就有了关于Yarn的各种发展和演变了。

)Yarn设计理念和基本架构

yarn是专门为了解决MRV1的缺点而生的。

1.yarn资源利用率高,因为他可以支持不同的计算框架在上面运行

2.运维成本低,以往一个集群一个框架的模式需要很多管理员去维护系统,现在可与在yarn上跑多个框架了,在上面你可以选择实时计算框架Storm,内存迭代式计算框架Spark,还可以用传统的MPI的方式解决对于数据计算要求比较高的数据挖掘算法。用一句话概括,yarn就是一个轻量级弹性计算平台。

Yarn的基本组成结构总体上仍沿用的是Master/Slave的结构,但是在资源管理这块,还是做了一点的变化的,一个ResourceManager是一个Master,在每个子节点下面都有一个NodeManager,由RM给NM分配资源,在每个节点中还会有ApplicationMaster(后面简称AM)的东西,他会负责与RM通信以获取资源,还会与NM通信来启动或者是停止任务。你可以理解成MRV1中的TaskTracker的角色。NM是每个节点上的资源和任务管理器,NM,AM,RM三者之间在整个应用从启动到结束的过程中会进行许多的协作。下面是一张模拟图:

时间: 2024-10-09 22:23:21

Yarn架构基本概况(一)的相关文章

Yarn架构基本概况(二)

在概况(一)中,主要简单的对Yarn的情况作了简单的介绍,今天花一定时间在某些详细的模块上呈现下面Yarn的总体情况.帮助大家更好的理解Yarn. 1)ResourceManager 在Yarn的总体架构中.他用的也是Master/Slave架构,他的Slave是NodeManager,RM在Yarn中扮演着一个很重要的角色.他是负责集群中全部资源的统一管理和分配的. 他依据各个NM的资源汇报信息.把这些信息依照一定策略分配各个应用程序.以下是ResourceManager的主要内部结构: (1

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

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

理解Hadoop YARN架构

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

Yarn架构

jobtracker存在单点故障问题 jobtracker只支持mapreduce,计算框架不具有可扩展性 jobtracker是性能瓶颈 yarn可以整合不同的计算框架,提高资源利用率 yarn的基本架构 yarn运行过程 yarn容错性 Resource Manager  存在单点故障 正在基于zookeeper实现HA NodeManager 失败后,RM将失败任务告诉对应的AM,AM决定如何处理失败的任务. Application Master 失败后,由RM负责重启 AM需要处理内部任

Spark on Yarn 架构解析

. 一.Hadoop Yarn组件介绍: 我们都知道yarn重构根本的思想,是将原有的JobTracker的两个主要功能资源管理器 和 任务调度监控 分离成单独的组件.新的架构使用全局管理所有应用程序的计算资源分配. 主要包含三个组件ResourceManager .NodeManager和ApplicationMaster以及一个核心概念Container. 1.ResourceManager(RM)  就是所谓的资源管理器,每个集群一个,实现全局的资源管理和任务调度.它可以处理客户端提交计算

yarn架构学习

yarn的资源管理架构 RM节点 资源调度算法 参数<property>yarn.resourcemanager.scheduler.class</property> capacity scheduler,默认值<value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler</value>,可不配置 fair scheduler,参数设置为or

Hadoop YARN架构设计要点

YARN是开源项目Hadoop的一个资源管理系统,最初设计是为了解决Hadoop中MapReduce计算框架中的资源管理问题,但是现在它已经是一个更加通用的资源管理系统,可以把MapReduce计算框架作为一个应用程序运行在YARN系统之上,通过YARN来管理资源.如果你的应用程序也需要借助YARN的资源管理功能,你也可以实现YARN提供的编程API,将你的应用程序运行于YARN之上,将资源的分配与回收统一交给YARN去管理,可以大大简化资源管理功能的开发.当前,也有很多应用程序已经可以构建于Y

YARN架构简介

从Hadoop的0.23版本,MapReduce进行了全面的彻底的变革,也就是我们今天看到的MapReduce 2.0或者我们也可以叫它YARN. 老版本的JobTracker有两个主要的功能:资源管理.任务调度与监控.Yarn的思路就是把这两个功能进行拆分,分别交给两个独立进程进行维护.这两个进程分别是ResourceManager进程和ApplicationMaster进程.ApplicationMaster进程是每个Job一个. RM和NM两种角色构成了Hadoop集群的计算框架.RM对所

Yarn架构设计详解

1.Yarn基本服务组件 Yarn是一种新的 Hadoop资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率.资源统一管理和数据共享等方面带来了巨大好处. ResourceManager(RM):负责对各NM上的资源进行统一管理和调度.将AM分配空闲的Container运行并监控其运行状态.对AM申请的资源请求分配相应的空闲Container.主要由两个组件构成:调度器和应用程序管理器. 调度器(Scheduler):调度器根据容量.队列等限制条件