栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

超详解Hadoop集群环境配置,步步附有截图,一篇讲解清楚

超详解Hadoop集群环境配置,步步附有截图,一篇讲解清楚

写在最前,在配置Hadoop之前,要确定已经准备好了Hadoop的准备环境,并且已经在机器上安装完了Hadoop,以及编写了一些必要的集群脚本,具体操作详情见这两篇文章
Hadoop安装及集群脚本编写
Hadoop集群准备环境搭建

一、Hadoop集群配置 1)集群部署规划

注意:

①NameNode和SecondaryNameNode不要安装在同一台服务器上。NN和2NN的关系就好像是NN的补充是2NN,如果安装在同一个机器上,机器一挂,NN和2NN全挂,完全不需要2NN对NN的补充

②ResourceManager也很消耗内存,不要和NameNode、SecondaryNameNode配置在同一台机器上

所以安装规划如下

hadoop102hadoop103hadoop104
HDFSNameNode
DataNode
DataNodeSecondaryNameNode
DataNode
YARNNodeMangerResourceManager
NodeManger
NodeManager
2)配置文件

Hadoop配置文件分为两类:默认配置文件和自定义文件

自定义文件主要有

core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml,四个文件都放在hadoop目录下的etc/hadoop路径,可以根据实际需要进行配置

自定义文件说明

文件说明
core-site.xml核心配置文件
hdfs-site.xmlhdfs配置文件
yarn-site.xmlyarn配置问及那
mapred-site.xmlmr配置文件
3)配置集群

①核心配置文件

配置core-site.xml

vim hadoop-3.1.3/etc/hadoop/core-site.xml
 
 
 
 
     
     
        fs.defaultFS 
        hdfs://hadoop102:8020 
     
 
     
     
        hadoop.tmp.dir 
        /opt/module/hadoop-3.1.3/data 
     
 
     
     
        hadoop.http.staticuser.user 
        lnnu 
     

注意:8020端口是客户端访问集群端口

②HDFS配置文件

配置hdfs-site.xml

vim hadoop-3.1.3/etc/hadoop/hdfs-site.xml
 
 
 
 
   
   
        dfs.namenode.http-address 
        hadoop102:9870 
     
   
     
        dfs.namenode.secondary.http-address 
        hadoop104:9868 
     

注意:9870是访问hdfs端口

③yarn配置文件

配置yarn-site.xml

vim hadoop-3.1.3/etc/hadoop/yarn-site.xml
 
 
 
 
     
     
        yarn.nodemanager.aux-services 
        mapreduce_shuffle 
     
 
     
     
        yarn.resourcemanager.hostname 
        hadoop103 
     
 
     
     
        yarn.nodemanager.env-whitelist 
        
JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME 
     

④MapReduce配置文件

配置mapred-site.xml

vim hadoop-3.1.3/etc/hadoop/mapred-site.xml
 
 
 
 
   
     
        mapreduce.framework.name 
        yarn 
     

4)配置好之后将文件分发到其他所有节点
xsync /opt/module/hadoop-3.1.3/etc/hadoop/
5)查看是否分发成功

二、启动集群 1)配置workers

配置workers文件,在/opt/module/hadoop-3.1.3/etc/hadoop/下

vim  /opt/module/hadoop-3.1.3/etc/hadoop/workers
hadoop102 
hadoop103 
hadoop104 

注意:文件中不允许有空格,也不允许有空行。因为集群无法识别你的空格和空行是否为一台机器

分发到其他节点

xsync /opt/module/hadoop-3.1.3/etc/hadoop/workers
2)启动集群

① 如果集群是第一次启动,需要在 hadoop102 节点格式化 NameNode

注意:格式化 NameNode,会产生新的集群 id,导致 NameNode 和 DataNode 的集群 id 不一致,集群找不到已往数据。如果集群在运行过程中报错,需要重新格式化 NameNode 的话,一定要先停止 namenode 和 datanode 进程,并且要删除所有机器的 data 和 logs 目录,然后再进行格式化。

hdfs namenode -format

②启动HDFS

sbin/start-dfs.sh

③启动YARN,因为YARN配置在了hadoop103上,所以到103上启动,ResourceManager

sbin/start-yarn.sh

④web端查看HDFS的NameNode

浏览器:http://hadoop102:9870

⑤web端查看YARN的ResourceManager

浏览器:http://hadoop103:8088

3)集群小测试

集群启动之后,要测试是否能够正常运行,还是使用之前的官方小案例WordCount

①上传文件到集群

hadoop fs -mkdir /input
hadoop fs -put fileName /wc

上传大文件

hadoop fs -put /opt/software/jdk-8u212-linux-x64.tar.gz  / 

查看是否成功

4)配置历史服务器

①历史服务器可以在mapred-site.xml里配置

vim mapred-site.xml

增加内容

 
 
    mapreduce.jobhistory.address 
    hadoop102:10020 
 
 
 
 
    mapreduce.jobhistory.webapp.address 
    hadoop102:19888 

②分发历史服务器

xsync /opt/module/hadoop-3.1.3/etc/hadoop/mapred-site.xml

③启动历史服务器

mapred --daemon start historyserver

④查看是否启动成功

jps

⑤web端查看JobHistory

http://hadoop102:19888/jobhistory

5)配置日志的聚集

就是把应用的日志信息上传到HDFS系统上。

日志聚集配置之后,可以方便的查看到程序运行详情,方便开发调试。

开启日志聚集功能,需要重新启动NodeManager、ResourceManager和HistoryServer。

开启步骤:

①配置yarn-site.xml

vim yarn-site.xml

增加配置

 
 
    yarn.log-aggregation-enable 
    true 
 
 
   
    yarn.log.server.url   
    http://hadoop102:19888/jobhistory/logs 
 
 
 
    yarn.log-aggregation.retain-seconds 
    604800 

②分发配置

xsync /opt/module/hadoop-3.1.3/etc/hadoop/yarn-site.xml

③关闭NameManager、ResourceManager、HistoryServer

sbin/stop-dfs.sh
sbin/stop-yarn.sh
mapred  --daemon stop historyserver


④确认已经关闭

jps

⑤启动NameManager、ResourceManager、HistoryServer

sbin/start-dfs.sh
mapred --daemon start historyserver
sbin/start-yarn.sh

启动成功

⑥执行WordCount案例

hadoop  jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount /input/word.txt /output 

查看结果

结果内容

6)集群启动/停止总结

①各个模块分开启动/停止

HDFS:

start-dfs.sh/stop-dfs.sh

YARN:

start-yarn.sh/stop-yarn.sh

②各个服务组件逐一启动/停止

分别启动HDFS组件

hdfs --daemon start/stop namenode/datanode/secondarynamenode

启动/停止YARN

yarn --daemon start/stop  resourcemanager/nodemanager 
7)Hadoop集群常用脚本

①Hadoop启停脚本

编写一个脚本文件,可以启动HDFS、YARN、HistoryServer

vim /home/lnnu/bin/myhadoop.sh
#!/bin/bash 
 
if [ $# -lt 1 ] 
then 
    echo "No Args Input..." 
    exit ; 
fi 
 
case $1 in 
"start") 
        echo " =================== 启动 hadoop 集群 ===================" 
 
        echo " --------------- 启动 hdfs ---------------" 
        ssh hadoop102 "/opt/module/hadoop-3.1.3/sbin/start-dfs.sh" 
        echo " --------------- 启动 yarn ---------------" 
        ssh hadoop103 "/opt/module/hadoop-3.1.3/sbin/start-yarn.sh" 
        echo " --------------- 启动 historyserver ---------------" 
        ssh hadoop102 "/opt/module/hadoop-3.1.3/bin/mapred --daemon start historyserver" 
;; 
"stop") 
        echo " =================== 关闭 hadoop 集群 ===================" 
 
        echo " --------------- 关闭 historyserver ---------------" 
        ssh hadoop102 "/opt/module/hadoop-3.1.3/bin/mapred --daemon stop historyserver" 
        echo " --------------- 关闭 yarn ---------------" 
        ssh hadoop103 "/opt/module/hadoop-3.1.3/sbin/stop-yarn.sh" 
        echo " --------------- 关闭 hdfs ---------------" 
        ssh hadoop102 "/opt/module/hadoop-3.1.3/sbin/stop-dfs.sh" 
;; 
*) 
    echo "Input Args Error..." 
;; 
esac 

给脚本执行权限

chmod +x myhadoop.sh

脚本测试

myhadoop start

②查看三台服务器Java进程脚本执行权限

vim /home/lnnu/bin/jpsall
#!/bin/bash 
 
for host in hadoop102 hadoop103 hadoop104 
do 
        echo =============== $host =============== 
        ssh $host jps  
done

添加执行权限

chmod +x jpsall

测试脚本

jpsall

测试成功,将脚本分发

8)常用端口号说明
端口名称Hadoop2.xhadoop3.x
NameNode
内部通信端口
8020/90008020/9000/9820
NameNode HTTP UI
(hdfs端口)
500709870
MapReduce
查看执行任务窗口
80888088
历史服务器通信端口1988819888
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/653742.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号