分布式资源管理与任务调度框架Yarn

Yarn是Apache Hadoop的资源管理器,旨在解决Hadoop1.x中MapReduce的扩展性和单点故障问题。通过资源管理与计算框架解耦,提供统一资源管理和任务调度,提高集群资源利用率和数据共享效率。Yarn架构包含ResourceManager、NodeManager、ApplicationMaster和Container,具备容错性,支持多种计算框架,并通过FIFO、Capacity、Fair等调度策略进行资源分配。
摘要由CSDN通过智能技术生成

一、Yarn简介
1、Yarn是什么
Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)
一种新的Hadoop资源管理器,一个通用资源管理系统
为上层提供统一的资源管理与任务调度及监控,提高了集群管理效率、资源使用率、数据共享效率
2、产生背景
在Hadoop1.x中MapReduce是Master/Slave结构,在集群中的表现形式为:1个JobTracker带多个TaskTracker,我们称之为MRv1。
Master:是整个集群的唯一全局管理者,功能包括:作业管理、状态监控和任务调度等即MapReduce中的JobTracker。
Slave:负责任务的执行和任务状态的汇报,即MapReduce中的TaskTracker。

在这里插入图片描述

MRv1包括三个部分:运行时环境(JobTracker和TaskTracker)、编程模型(MapReduce)和数据处理引擎(Map任务和Reduce任务)。
JobTracker主要功能:
资源管理,协调平衡集群中的计算节点,合理分配。
任务调度,一个作业对应多个任务,负责任务调度、状态监控、容错管理等。
TaskTracker主要功能:
执行任务,响应JobTracker命令,如启动、停止任务等
汇报心跳:汇报节点健康状况、资源使用情况等。汇报任务执行进度、任务运行状态等。

MRv1存在的主要问题:
JobTracker单点故障,如果它挂掉,整个系统无法运转
JobTracker负载过重,限制了集群扩展,随着节点规模的增大,称为集群的瓶颈
仅支持MR计算框架,适合批处理、基于磁盘的计算
资源与计算没有很好的解耦设计,一个集群只能使用一个计算框架,如Hadoop&MapReduce集群、Spark集群、Tez集群等。造成管理复杂、资源利用率低的难题

综上所述MRv1有以上缺陷:扩展性受限、单点故障、难以支持MR之外的计算框架。多计算框架各自为战,数据共享困难,资源利用率低。这些因素催生了Yarn的产生。
3、Yarn特点
资源管理与计算框架解耦设计,一个集群资源共享给上层各个计算框架,按需分配,大幅度提高资源利用率
运维成本显著下降,只需运维一个集群,同时运行满足多种业务需求的计算框架
集群内数据共享一致,数据不再需要集群间拷贝转移,达到共享互用
避免单点故障、集群资源扩展得到合理解决
4、Yarn应用
需要统一资源管理和任务调度的平台均可以使用,已成为大数据集群的必备组件之一。

二、Yarn架构设计
1、架构设计图
Yarn设计的核心思想是将JobTracker的两个主要职责:资源管理和任务调度管理,分别交给两个角色负责。

在这里插入图片描述
一个是全局的ResourceManager,一个是每个应用中唯一的ApplicationMaster。
ResourceManager以及每个节点一个的NodeManager构成了新的通用系统,实现以分布式方式管理应用。

2、基本组成
YARN总体上仍然是Master/Slave结构,在整个资源管理框架中,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值