大数据基础平台搭建-(二)Hadoop集群搭建

大数据基础平台搭建-(二)Hadoop集群搭建

大数据平台系列文章:
1、大数据基础平台搭建-(一)基础环境准备
2、大数据基础平台搭建-(二)Hadoop集群搭建
3、大数据基础平台搭建-(三)Hadoop集群HA+Zookeeper搭建
4、大数据基础平台搭建-(四)HBase集群HA+Zookeeper搭建
5、大数据基础平台搭建-(五)Hive搭建

大数据平台是基于Apache Hadoop_3.3.4搭建的;

一、部署架构

在这里插入图片描述

二、在hnode1服务器上搭建Name_Node_Master

1、解压Hadoop

[root@hnode1 ~]# cd /opt/hadoop/
[root@hnode1 hadoop]# mkdir data
[root@hnode1 hadoop]# tar -xzvf hadoop-3.3.4.tar.gz 

2、配置HADOOP_HOME环境变量

[root@hnode1 hadoop]# vim /etc/profile
#Hadoop
export HADOOP_HOME=/opt/hadoop/hadoop-3.3.4
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

[root@hnode1 hadoop]# source /etc/profile

3、配置Hadoop集群配置文件

配置文件所在的目录/opt/hadoop/hadoop-3.3.4/etc/hadoop/,所要编辑的配置文件如下表所示

序号配置文件说明
1core-site.xml配置Hadoop守护进程
2hdfs-site.xml配置HDFS的NameNode
3yarn-site.xml配置YARN的ResourceManager
4mapred-site.xml配置MapReduce应用
5hadoop-env.sh配置Hadoop环境变量
6yarn-env.sh配置Yarn环境变量
7workers配置Hadoop集群工作节点

1). 配置hadoop守护进程

[root@hnode1 hadoop]# cd hadoop-3.3.4 
[root@hnode1 hadoop-3.3.4]# vim etc/hadoop/core-site.xml
<configuration>
    <!-- 指定NameNode的地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hnode1:8020</value>
    </property>
    <!-- 在读写SequenceFiles时缓存区大小128k -->
    <property>
        <name>io.file.buffer.size</name>
        <value>131072</value>
    </property>
    <!-- 指定 hadoop 数据的存储目录  -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/hadoop/data</value>
    </property>
    <!-- 配置 HDFS 网页登录使用的静态用户为 root -->
    <property>
        <name>hadoop.http.staticuser.user</name>
        <value>root</value>
    </property>
</configuration>

2). 配置NameNode

[root@hnode1 hadoop-3.3.4]# vim etc/hadoop/hdfs-site.xml
<configuration>
    <!-- NameNode Master节点 web 端访问地址-->
    <property>
        <name>dfs.namenode.http-address</name>
        <value>hnode1:9870</value>
    </property>

    <!-- NameNode Seconde节点 web 端访问地址-->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>hnode2:9868</value>
    </property>
</configuration>

3). 配置YARN的ResourceManager

[root@hnode1 hadoop-3.3.4]# vim etc/hadoop/yarn-site.xml
<configuration>
<!-- Site specific YARN configuration properties -->
    <!-- 指定 MR 走 shuffle -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>

    <!-- 指定 ResourceManager 的地址-->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>hnode1</value>
    </property>

    <!-- 环境变量的继承 -->
    <property>
        <name>yarn.nodemanager.env-whitelist</name>
        <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
    </property>
 
    <!-- 开启日志聚集功能 -->
    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>

    <!-- 设置日志聚集服务器地址 -->
    <property>
        <name>yarn.log.server.url</name>
        <value>http://hnode2:19888/jobhistory/logs</value>
    </property>

    <!-- 设置日志保留时间为 7 天 -->
    <property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>604800</value>
    </property>

</configuration>

4). 配置MapReduce应用

[root@hnode1 hadoop-3.3.4]# vim etc/hadoop/mapred-site.xml
<configuration>
    <!-- 指定 MapReduce 程序运行在 Yarn 上 -->
    <property>
        <name>mapreduce.framework.name</name>
       <value>yarn</value>
    </property>

    <!-- 历史服务器端地址 -->
    <property>
       <name>mapreduce.jobhistory.address</name>
       <value>hnode2:10020</value>
    </property>

    <!-- 历史服务器 web 端地址 -->
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>hnode2:19888</value>
    </property>

</configuration>

5). 配置Hadoop环境变量

[root@hnode1 hadoop-3.3.4]# vim etc/hadoop/hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.8.0_271
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

5). 配置Yarn环境变量

[root@hnode1 hadoop-3.3.4]# vim etc/hadoop/yarn-env.sh
export JAVA_HOME=/usr/java/jdk1.8.0_271

6). 配置Hadoop集群工作节点

[root@hnode1 hadoop-3.3.4]# vim etc/hadoop/works
hnode1
hnode2
hnode3
hnode4
hnode5

三、在hnode2服务器上搭建Name_Node_Secondary

1、复制Hadoop

[root@hnode2 ~]#cd /opt/hadoop/
[root@hnode2 hadoop]# mkdir data
[root@hnode2 hadoop]# scp -r hnode1:/opt/hadoop/hadoop-3.3.4/ ./ 

2、配置HADOOP_HOME环境变量

[root@hnode2 hadoop]# vim /etc/profile 
#Hadoop
export HADOOP_HOME=/opt/hadoop/hadoop-3.3.4
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
[root@hnode2 hadoop]# source /etc/profile 

四、在hnode3服务器上搭建DataNode

1、复制Hadoop

[root@hnode3 ~]#cd /opt/hadoop/
[root@hnode3 hadoop]# mkdir data
[root@hnode3 hadoop]# scp -r hnode1:/opt/hadoop/hadoop-3.3.4/ ./ 

2、配置HADOOP_HOME环境变量

[root@hnode3 hadoop]# vim /etc/profile 
#Hadoop
export HADOOP_HOME=/opt/hadoop/hadoop-3.3.4
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
[root@hnode3 hadoop]# source /etc/profile 

五、在hnode4服务器上搭建Name_Node_Secondary

1、复制Hadoop

[root@hnode4 ~]#cd /opt/hadoop/
[root@hnode4 hadoop]# mkdir data
[root@hnode4 hadoop]# scp -r hnode1:/opt/hadoop/hadoop-3.3.4/ ./

2、配置HADOOP_HOME环境变量

[root@hnode4 hadoop]# vim /etc/profile 
#Hadoop
export HADOOP_HOME=/opt/hadoop/hadoop-3.3.4
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
[root@hnode4 hadoop]# source /etc/profile 

六、在hnode5服务器上搭建Name_Node_Secondary

1、复制Hadoop

[root@hnode5 ~]#cd /opt/hadoop/
[root@hnode5 hadoop]# mkdir data
[root@hnode5 hadoop]# scp -r hnode1:/opt/hadoop/hadoop-3.3.4/ ./ 

2、配置HADOOP_HOME环境变量

[root@hnode5 hadoop]# vim /etc/profile 
#Hadoop
export HADOOP_HOME=/opt/hadoop/hadoop-3.3.4
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
[root@hnode5 hadoop]# source /etc/profile 

七、启动Hadoop集群(在hnode1服务器上操作)

1. 创建Hadoop启动停止脚本

shell脚本是引用 FlyingCodes的博文大数据平台搭建详细流程(二)Hadoop集群搭建的脚本

[root@hnode1 ~]#cd /opt/hadoop/
[root@hnode1 hadoop]# vim hadoop.sh
#!/bin/bash

if [ $# -lt 1 ]
then
    echo "缺少参数..."
    exit ;
fi

case $1 in
"start")
        echo " ===================| 启动 Hadoop集群 | ==================="
        echo " -------------------| 启动 HDFS      | ---------------"
        ssh hnode1 "/opt/hadoop/hadoop-3.3.4/sbin/start-dfs.sh"
        echo " -------------------| 启动 YARN      | ---------------"
        ssh hnode1 "/opt/hadoop/hadoop-3.3.4/sbin/start-yarn.sh"
        echo " -------------------| 启动 HistoryServer |---------------"
        ssh hnode2 "/opt/hadoop/hadoop-3.3.4/bin/mapred --daemon start historyserver"
;;
"stop")
        echo " ===================| 关闭 Hadoop集群 |==================="
        echo " -------------------| 关闭 HistoryServer |---------------"
        ssh hnode2 "/opt/hadoop/hadoop-3.3.4/bin/mapred --daemon stop historyserver"
        echo " -------------------| 关闭 YARN      | ---------------"
        ssh hnode1 "/opt/hadoop/hadoop-3.3.4/sbin/stop-yarn.sh"
        echo " -------------------| 关闭 HDFS      | ---------------"
        ssh hnode1 "/opt/hadoop/hadoop-3.3.4/sbin/stop-dfs.sh"
;;
*)
    echo "输入的参数错误..."
;;
esac
[root@hnode1 hadoop]# chmod +x ./hadoop.sh 

2. Hadoop集群初始化

[root@hnode1 hadoop]# start-dfs.sh
[root@hnode1 hadoop]# start-yarn.sh
[root@hnode1 hadoop]# hdfs namenode -format 
[root@hnode1 hadoop]# ./hadoop.sh stop

3. Hadoop集群启动

[root@hnode1 hadoop]# ./hadoop.sh start

在这里插入图片描述

八、确认Hadoop集群状态

1. 查看HDFS

http://hnode1:8088

在这里插入图片描述

2. 查看DataNode

http://hnode1:9870

在这里插入图片描述
在这里插入图片描述

3. 查看HistoryServer

http://hnode2:19888/jobhistory
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

老杜095

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

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

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

打赏作者

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

抵扣说明:

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

余额充值