大数据技术基础实验十二:YARN实验——部署YARN集群

本文详述了YARN的原理及集群部署过程,包括YARN的资源管理、任务调度机制,以及配置SSH免密登录、启动HDFS、配置YARN、启动YARN和验证YARN服务的步骤。实验旨在帮助读者理解YARN在Hadoop生态系统中的作用,并能实际操作部署YARN分布式集群。
摘要由CSDN通过智能技术生成

大数据技术基础实验十二:YARN实验——部署YARN集群

一、前言

目前我们的大数据技术基础这门课已经算是结课了,本学期也没有多久也要期末考试了,时间过得很快,另外,我争取将学校大数据平台上面的大部分实验都做一遍然后写成博客的形式发出来,因为可能后续我们就使用不了这个平台了。

今天我们来做一下关于YARN集群部署的实验并了解一下什么是YARN框架。

二、实验目的

了解什么是YARN框架,如何搭建YARN分布式集群,并能够使用YARN集群提交一些简单的任务,理解YARN作为Hadoop生态中的资源管理器的意义。

三、实验要求

搭建YARN集群,并使用YARN集群提交简单的任务。观察任务提交的之后的YARN的执行过程。

四、实验原理

1、YARN概述

YARN是一个资源管理、任务调度的框架,采用master/slave架构,主要包含三大模块:ResourceManager(RM)、NodeManager(NM)、ApplicationMaster(AM)。其中,ResourceManager负责所有资源的监控、分配和管理,运行在主节点; NodeManager负责每一个节点的维护,运行在从节点;ApplicationMaster负责每一个具体应用程序的调度和协调,只有在有任务正在执行时存在。对于所有的applications,RM拥有绝对的控制权和对资源的分配权。而每个AM则会和RM协商资源,同时和NodeManager通信来执行和监控task。几个模块之间的关系如下图所示:

在这里插入图片描述

2、YARN运行流程

在这里插入图片描述

master向RM提交应用程序,其中包括启动该应用的ApplicationMaster的必须信息,例如ApplicationMaster程序、启动ApplicationMaster的命令、用户程序等。

ResourceManager启动一个container用于运行ApplicationMaster。

启动中的ApplicationMaster向ResourceManager注册自己,启动成功后与RM保持心跳。

ApplicationMaster向ResourceManager发送请求,申请相应数目的container。

ResourceManager返回ApplicationMaster的申请的containers信息。申请成功的container,由ApplicationMaster进行初始化。container的启动信息初始化后,AM与对应的NodeManager通信,要求NM启动container。AM与NM保持心跳,从而对NM上运行的任务进行监控和管理。

container运行期间,ApplicationMaster对container进行监控。container通过RPC协议向对应的AM汇报自己的进度和状态等信息。

应用运行期间,master直接与AM通信获取应用的状态、进度更新等信息。

应用运行结束后,ApplicationMaster向ResourceManager注销自己,并允许属于它的container被收回。

五、实验步骤

1、配置各服务器之间的免密登录

首先配置master,slave1和slave2之间的免密登录和各虚拟机的/etc/hosts文件,这个步骤请参考我之前的一篇博客,里面有详细过程:

大数据技术基础实验一:配置SSH免密登录

2、配置HDFS并启动

我看了一下学校虚拟机,首先java路径就没有配置,所以不能直接启动HDFS,需要重新配置,具体配置过程可以参考我之前的博客:大数据技术基础实验三:HDFS实验——部署HDFS

配置完之后启动成功,出现如下图即可:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3、在master机上配置YARN

首先指定YARN主节点,输入如下命令编辑文件“/usr/cstor/hadoop/etc/hadoop/yarn-site.xml”:

vim /usr/cstor/hadoop/etc/hadoop/yarn-site.xml

将如下内容嵌入此文件里configuration标签间:

<property>
  <name>yarn.resourcemanager.hostname</name>
  <value>master</value>
</property>
<property>
  <name>yarn.nodemanager.aux-services</name>
  <value>mapreduce_shuffle</value>
</property>

在这里插入图片描述

yarn-site.xml是YARN守护进程的配置文件。第一句配置了ResourceManager的主机名,第二句配置了节点管理器运行的附加服务为mapreduce_shuffle,只有这样才可以运行MapReduce程序。

紧接着在master机上操作,将配置好的YARN配置文件拷贝至slaveX,也就是拷贝到其他服务器上:

for  x  in  `cat ~/data/4/machines` ; do  echo  $x ; scp  /usr/cstor/hadoop/etc/hadoop/yarn-site.xml  $x:/usr/cstor/hadoop/etc/hadoop/  ; done;

在这里插入图片描述

4、统一启动YARN

确认已配置slaves文件,在master机器上查看:

cat  /usr/cstor/hadoop/etc/hadoop/slaves

在这里插入图片描述

YARN配置无误,统一启动YARN:

/usr/cstor/hadoop/sbin/start-yarn.sh

在这里插入图片描述

5、验证YARN启动成功

分别在三台虚拟机上输入jps查看YARN服务是否已启动:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

可以看出我们成功启动了。

在master节点成功启动ResourceManager,它负责整个集群的资源管理分配,是一个全局的资源管理系统。

NodeManager是每个节点上的资源和任务管理器,它是管理这台机器的代理,负责该节点程序的运行,以及该节点资源的管理和监控。YARN集群每个节点都运行一个NodeManager。

在当前的Windows机器上打开浏览器,地址栏输入master的IP和端口号8088(例:10.1.1.7:8088),即可在Web界面看到YARN相关信息。

六、最后我想说

本实验最后其实有两个验证任务,DistributedShell任务和MapReduce型任务,但是因为实验平台是前几年就有的但是直到现在实验报告并未更新,现在我们只有三个虚拟机,但是在之前的实验时有五台虚拟机,我们没有client机所以无法做这个两个实验。

所以本次实验只能进行到这里了,后面我会继续更新其他实验的。

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

-北天-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值