Hadoop学习之旅(二)-YARN

本文详细介绍了YARN(Yet Another Resource Negotiator)的产生背景、概述、架构及其执行流程。YARN作为Hadoop生态系统中的一种资源管理器,解决了MapReduce1.x存在的问题,如单点故障和资源利用率低下等。通过将资源管理和计算框架分离,YARN能够支持多种计算框架,如MapReduce、Spark等,从而提高集群资源的利用率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、YARN产生背景

1.1、背景
  • MapReduce1.x存在的问题:单点故障
  • 节点压力大不易扩展
  • 不支持除了MapReduce之外的框架
1.2、资源利用率&运维成本

在这里插入图片描述

1.3、管理多种集群和计算框架

不同计算框架可以共享同一HDFS集群上的数据,享受整体的资源调度
在这里插入图片描述

二、YARN概述

  • XXX on YARN:与其他计算框架共享集群资源,按资源需要分配,进而提高集群资源的利用率
  • 通用的资源管理系统
  • 为上层应用提供统一的资源管理和调度

三、YARN架构

3.1、图示

在这里插入图片描述

3.2、组件
3.2.1、ResourceManager(RM)
  • 整个集群同一时间提供服务的RM只有一个,负责集群资源的统一管理和调度
  • 处理客户端的请求:提交一个作业,杀死一个作业
  • 监控我们的NM,一旦某个NM挂了,那么该NM上运行过的任务需要告诉AM来如何进行处理
3.2.2、NodeManager(NM)
  • 整个集群中有多个,负责自己本身节点资源管理和使用
  • 定时向RM汇报本节点的资源使用情况
  • 接收并处理来自RM的各种命令:如启动Container
  • 处理来自AM的命令
  • 单个节点的资源管理
3.2.3、ApplicationMaster(AM)
  • 每个应用程序对应一个:MR、Spark,负责应用程序的管理
  • 为应用程序向RM申请资源(core、memory),分配给内部task
  • 需要与NM通信:启动/停止task,task是运行在container里面,AM也是运行在container里面的
3.2.4、Container
  • 封装了CPU、Memory等资源的一个容器
  • 是一个任务运行环境的抽象
3.2.5、Client
  • 提交作业
  • 查询作业的运行进度
  • 杀死作业

四、YARN执行流程

4.1、图示

在这里插入图片描述

4.2、流程
  1. Client提交作业(例如MapReduce作业或者Spark作业)
  2. RM为作业分配第一个Container,随机指定在某个NM上
  3. NM会分配一个container去启动对应的AM
  4. AM向RM注册,Client这时可以通过RM查看当前的作业进度;AM向RM申请资源(core、memory等)
  5. 申请到资源之后,开始在对应的NM(随机)上启动container
  6. 在container上运行task

五、YARN环境搭建

5.1、mapred-site.xml
<property>
	<name>mapreduce.framework.name</name>
	<value>yarn</value>
</property>
5.2、yarn-site.xml
<property>
	<name>yarn.nodemanager.aux-services</name>
	<value>mapreduce_shuffle</value>
</property>
5.3、启动RM进程和NM进程
sbin/start-yarn.sh
5.4、验证

jps命令:会看到当前linux下的进程
访问http://localhost:8088

六、提交作业到YARN上执行

例子
hadoop安装包下面就有很多MR的实例:

/****/hadoop-2.6.5/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.5.jar

运行

hadoop jar hadoop-mapreduce-examples-2.6.5.jar pi 2 3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值