hadoop集群安装

hadoop集群安装

文章内容输出来源:拉勾教育大数据高薪训练营

前沿

默认已经安装好三台虚拟机.
虚拟机安装及集群配置可以参考之前的文章

  1. MacOS安装VMWare Fusion
  2. MacOS通过VMWare Funsion 安装Centos7
  3. MacOs安装Centos后配置静态IP
  4. MacOs VMWare Fusion克隆Centos7

安装部署目录

框架linux129linux130linux131
HDFSNameNode、 DataNodeDataNodeSecondaryNameNode、 DataNode
YARNNodeManagerResourceManager、 NodeManagerNodeManager

JDK准备

创建文件夹

三台服务器分别创建文件目录

存放安装包目录

mkdir -p /opt/adou/software

存放软件目录

mkdir -p /opt/adou/servers

在这里插入图片描述
在这里插入图片描述
注意:三台服务器都要执行

上传JDK安装包

资源路径

链接: https://pan.baidu.com/s/1LrGI-ixUrupEZ-XKKLYMhg 
提取码: k8h5

上传jdk安装包到/opt/adou/software中
在这里插入图片描述

解压安装包到/opt/adou/servers目录下

tar -zxvf /opt/adou/software/jdk-8u231-linux-x64.tar.gz -C /opt/adou/servers/

在这里插入图片描述

配置环境变量

vim /etc/profile

末尾增加jdk的环境变量

export JAVA_HOME=/opt/adou/servers/jdk1.8.0_231
export PATH=:$JAVA_HOME/bin:$PATH

在这里插入图片描述
生效环境变量

source /etc/profile

校验是否生效

java -version

在这里插入图片描述
看到图片所示安装成功

集群安装hadoop

资源:
hadoop-2.9.2.tar.gz

链接: https://pan.baidu.com/s/1pPmk3Ab-oLb0wFon2vrnPg 
提取码: qcx6

上传hadoop-2.9.2.tar.gz

在这里插入图片描述

解压到/servers目录中

 cd /opt/adou/software/
 tar -zxvf hadoop-2.9.2.tar.gz -C ../servers/

查看是否解压成功

ll /opt/adou/servers/hadoop-2.9.2

在这里插入图片描述

配置环境变量

vim /etc/profile

添加如下内容

##HADOOP_HOME 
export HADOOP_HOME=/opt/adou/servers/hadoop-2.9.2 
export PATH=$PATH:$HADOOP_HOME/bin 
export PATH=$PATH:$HADOOP_HOME/sbin

在这里插入图片描述
生效变量

source /etc/profile

测试变量是否有效

hadoop version

在这里插入图片描述

集群配置

进入配置目录

cd /opt/adou/servers/hadoop-2.9.2/etc/hadoop

在这里插入图片描述

配置 hadoop-env.sh

将JDK安装目录配置给HDFS

vim hadoop-env.sh

JDK路径:

/opt/adou/servers/jdk1.8.0_231

在这里插入图片描述

配置core-site.xml

指定NameNode节点以及数据存储目录

vim core-site.xml
<!-- 指定HDFS中NameNode的地址 --> 
<property> 
	<name>fs.defaultFS</name> 
	<value>hdfs://linux129:9000</value> 
</property> 
<!-- 指定Hadoop运行时产生文件的存储目录 --> 
<property> 
	<name>hadoop.tmp.dir</name> 
	<value>/opt/adou/servers/hadoop-2.9.2/data/tmp</value> 
</property>

配置hdfs-site.xml

指定secondarynamenode节点

vim hdfs-site.xml
<!-- 指定Hadoop辅助名称节点主机配置 --> 
<property> 
	<name>dfs.namenode.secondary.http-address</name>
	<value>linux131:50090</value> 
</property> 
<!--副本数量 --> 
<property>
	<name>dfs.replication</name> 
	<value>3</value> 
</property>

在这里插入图片描述

配置slaves文件

vim slaves
增加节点名称
linux129
linux130
linux131

在这里插入图片描述
注意不能有个空,不能有换行

配置mapred-env.sh

指定MapReduce使用的jdk路径

vim mapred-env.sh
##修改如下内容
export JAVA_HOME=/opt/adou/servers/jdk1.8.0_231

在这里插入图片描述

配置mapred-site.xml

指定MapReduce计算框架运行Yarn资源调度框架

##复制模版
mv mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
##增加如下内容
<!-- 指定MR运行在Yarn上 --> 
<property>
	<name>mapreduce.framework.name</name> 
	<value>yarn</value> 
</property>

在这里插入图片描述

Yarn集群配置

  • 指定JDK路径
vim yarn-env.sh
##修改如下内容
export JAVA_HOME=/opt/adou/servers/jdk1.8.0_231

在这里插入图片描述

  • 指定ResourceMnager的master节点信息
vim yarn-site.xml
##修改内容如下
<!-- 指定YARN的ResourceManager的地址 --> 
<property>
	<name>yarn.resourcemanager.hostname</name> 
	<value>linux131</value> 
</property> 
<!-- Reducer获取数据的方式 --> 
<property>
	<name>yarn.nodemanager.aux-services</name> 
	<value>mapreduce_shuffle</value> 
</property>

在这里插入图片描述

为了避免出现信息混乱,修改Hadoop安装目录所属用户和用户组!!

chown -R root:root /opt/adou/servers/hadoop-2.9.2

编写发送脚本

 cd /usr/local/bin/
 ## 创建脚本shell
 touch rsync-script
 ## 编辑脚本shell
 vim rsync-script

脚本内容

#!/bin/bash 
#1 获取命令输入参数的个数,如果个数为0,直接退出命令 
paramnum=$# 
if((paramnum==0)); then 
echo no params; 
exit; 
fi
#2 根据传入参数获取文件名称 
p1=$1 
file_name=`basename $p1` 
echo fname=$file_name 
#3 获取输入参数的绝对路径 
pdir=`cd -P $(dirname $p1); pwd` 
echo pdir=$pdir 
#4 获取用户名称 
user=`whoami` 
#5 循环执行 
for((host=129; host<132; host++)); do 
echo ------------------- linux$host -------------- 
	rsync -rvl $pdir/$file_name $user@linux$host:$pdir 
done

在这里插入图片描述

修改脚本 rsync-script 具有执行权限

chmod 777 rsync-script

分发软件给另外两台服务器

  • 分发jdk给
rsync-script /opt/adou/servers/jdk1.8.0_231/
  • 分发hadoop
rsync-script /opt/adou/servers/hadoop-2.9.2
  • 分发/etc/profile
rsync-script /etc/profile

执行完之后,全部执行一次变量生效

source /etc/profile

启动集群

注意:如果集群是第一次启动,需要在Namenode所在节点格式化NameNode,非第一次不用执行格式化Namenode操作!!

hadoop namenode -format

在这里插入图片描述
看到如图这个格式化成功
在linux129上执行

start-dfs.sh

在这里插入图片描述

在liux131上执行

start-yarn.sh

在各台服务器执行jps;
在这里插入图片描述
说明启动成功

WEB端页面

http://linux129:50070/dfshealth.html#tab-overview
在这里插入图片描述
三个存活节点.集群配置成功

如果没有访问成功

主机需要配置域名和ip地址映射
在这里插入图片描述

配置历史服务器

在Yarn中运行的任务产生的日志数据不能查看,为了查看程序的历史运行情况,需要配置一下历史日志
服务器。具体配置步骤如下:

vim mapred-site.xml
<!-- 历史服务器端地址 --> 
<property> 
	<name>mapreduce.jobhistory.address</name> 
	<value>linux129:10020</value> 
</property> 
<!-- 历史服务器web端地址 --> 
<property> 
	<name>mapreduce.jobhistory.webapp.address</name>
	<value>linux129:19888</value> 
</property>

配置日志的聚集

日志聚集:应用(Job)运行完成以后,将应用运行日志信息从各个task汇总上传到HDFS系统上。
日志聚集功能好处:可以方便的查看到程序运行详情,方便开发调试。
注意:开启日志聚集功能,需要重新启动NodeManager 、ResourceManager和
HistoryManager。

vi yarn-site.xml
<!-- 日志聚集功能使能 -->
<property> 
	<name>yarn.log-aggregation-enable</name> 
	<value>true</value> 
</property> 
<!-- 日志保留时间设置7天 --> 
<property> 
	<name>yarn.log-aggregation.retain-seconds</name> 
	<value>604800</value> 
</property>

重新分发

rsync-script /opt/adou/servers/hadoop-2.9.2/etc/hadoop/

重新启动yarn
启动日志服务器–linux129服务器

 sbin/mr-jobhistory-daemon.sh start historyserver

在这里插入图片描述
在这里插入图片描述
服务器web页面
http://linux129:19888/jobhistory
在这里插入图片描述

至此Hadoop全部集群创建完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值