目录

一、部署说明

二、集群规划

三、开始配置

3.1 MapReduce配置文件

3.2 YARN配置文件

3.3 分发配置文件

四、集群启停

4.1 命令介绍 

4.2 演示

4.3 查看YARN的WEB UI页面

一、部署说明

Hadoop HDFS分布式文件系统,我们会启动:

NameNode进程作为管理节点DataNode进程作为工作节点SecondaryNamenode作为辅助

同理,Hadoop YARN分布式资源调度,会启动:

ResourceManager进程作为管理节点NodeManager进程作为工作节点ProxyServer、JobHistoryServer这两个辅助节点

那么,MapReduce呢?

MapReduce运行在YARN容器内,无需启动独立进程

所以关于MapReduce和YARN的部署,其实就是2件事情:

关于MapReduce: 修改相关配置文件,但是没有进程可以启动

关于YARN: 修改相关配置文件, 并启动ResourceManager、NodeManager进程以及辅助进程(代理服务器、历史服务器)

总结

组件 配置文件 启动进程 备注 Hadoop HDFS 需修改 需启动

NameNode

作为主节点

DataNode

作为从节点

SecondaryNameNode

主节点辅助

分布式文件系统 Hadoop YARN 需修改 需启动

ResourceManager

作为集群资源管理者

NodeManager

作为单机资源管理者

ProxyServer

代理服务器提供安全性

JobHistoryServer

记录历史信息和日志

分布式资源调度 Hadoop MapReduce 需修改 无需启动任何进程 MapReduce程序运行在YARN容器内 分布式数据计算

二、集群规划

有3台服务器,其中node1配置较高

集群规划如下:

主机 角色 centos100 ResourceManager NodeManager ProxyServer JobHistoryServer centos101 NodeManager centos102 NodeManager

三、开始配置

3.1 MapReduce配置文件

在 $HADOOP_HOME/etc/hadoop 文件夹内,修改:

mapred-env.sh文件,添加如下环境变量

# 设置JDK路径

export JAVA_HOME=/opt/software/jdk/jdk1.8.0_202

# 设置JobHistoryServer进程内存为1G

export HADOOP_JOB_HISTORYSERVER_HEAPSIZE=1000

# 设置日志级别为INFO

export HADOOP_MAPRED_ROOT_LOGGER=INFO,RFA

mapred-site.xml文件,添加如下配置信息 

mapreduce.framework.name

yarn

MapReduce的运行框架设置为YARN

mapreduce.jobhistory.address

centos100:10020

历史服务器通讯端口为centos100:10020

mapreduce.jobhistory.webapp.address

centos100:19888

历史服务器web端口为centos100的19888

mapreduce.jobhistory.intermediate-done-dir

/data/mr-history/tmp

历史信息在HDFS的记录临时路径

mapreduce.jobhistory.done-dir

/data/mr-history/done

历史信息在HDFS的记录路径

yarn.app.mapreduce.am.env

HADOOP_MAPRED_HOME=$HADOOP_HOME

MapReduce HOME 设置为HADOOP_HOME

mapreduce.map.env

HADOOP_MAPRED_HOME=$HADOOP_HOME

MapReduce HOME 设置为HADOOP_HOME

mapreduce.reduce.env

HADOOP_MAPRED_HOME=%HADOOP_HOME

MapReduce HOME 设置为HADOOP_HOME

3.2 YARN配置文件

在 $HADOOP_HOME/etc/hadoop 文件夹内,修改:

yarn-env.sh文件,添加如下4行环境变量内容:

# 设置JDK路径的环境变量

export JAVA_HOME=/opt/software/jdk/jdk1.8.0_202

# 设置HADOOP_HOME的环境变量

export HADOOP_HOME=/opt/software/hadoop/hadoop-3.3.4

# 设置配置文件路径的环境变量

export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop

# 设置日志文件路径的环境变量

export HADOOP_LOG_DIR=$HADOOP_HOME/logs

yarn-site.xml文件,配置如下

yarn.resourcemanager.hostname

centos100

ResourceMangager设置在centos100节点

yarn.nodemanager.local-dirs

/data/nm-local

NodeManager中间数据本地存储路径

yarn.nodemanager.log-dirs

/data/nm-log

NodeManager数据日志本地存储路径

yarn.nodemanager.aux-services

mapreduce_shuffle

为MapReduce程序开启Shuffle服务

yarn.log.server.url

http://centos100:19888/jobhistory/logs

历史服务器URL

yarn.web-proxy.address

centos100:8089

代理服务器主机和端口

yarn.log-aggregation-enable

true

开启日志聚合

yarn.nodemanager.remote-app-log-dir

/tmp/logs

程序日志HDFS的存储路径

yarn.resoucemanager.scheduler.class

org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler

选择公平调度器

3.3 分发配置文件

MapReduce和YARN的配置文件修改好后,需要分发到其它的服务器节点中。

scp mapred-env.sh mapred-site.xml yarn-env.sh yarn-site.xml centos101:`pwd`/

scp mapred-env.sh mapred-site.xml yarn-env.sh yarn-site.xml centos102:`pwd`/

分发完成配置文件,就可以启动YARN的相关进程啦。

(ps:分发完成也可以去其他服务器检查一下是否成功!)

四、集群启停

4.1 命令介绍

常用的进程启动命令如下:

一键启动YARN集群: $HADOOP_HOME/sbin/start-yarn.sh

会基于yarn-site.xml中配置的yarn.resourcemanager.hostname来决定在哪台机器上启动resourcemanager会基于workers文件配置的主机启动NodeManager

一键停止YARN集群: $HADOOP_HOME/sbin/stop-yarn.sh

在当前机器,单独启动或停止进程

$HADOOP_HOME/bin/yarn --daemon start|stop resourcemanager|nodemanager|proxyserver

start和stop决定启动和停止可控制resourcemanager、nodemanager、proxyserver三种进程

历史服务器启动和停止

$HADOOP_HOME/bin/mapred --daemon start|stop historyserver

 

4.2 演示

下面开始演示:

在centos100服务器,以hadoop用户执行

首先执行:$HADOOP_HOME/sbin/start-yarn.sh,一键启动所需的:

ResourceManagerNodeManagerProxyServer(代理服务器)

其次执行:$HADOOP_HOME/bin/mapred --daemon start historyserver 启动: 

HistoryServer(历史服务器)

4.3 查看YARN的WEB UI页面

打开 http://centos100:8088 即可看到YARN集群的监控页面(ResourceManager的WEB UI)

最后别忘记了给虚拟机打上快照哦!

推荐链接

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。