[实验]Hadoop集群安装与配置

1.2 [实验]Hadoop集群安装与配置

1.2.1 实验目的

1、在Linux系统上安装Hadoop及相关应用软件;

2、掌握集群所有节点之间SSH免密登录配置方式;

3、掌握Hadoop集群的搭建配置流程;

4、理解Hadoop集群的原理,并掌握Hadoop集群的配置方法

1.2.2 实验环境

平台:大数据实验实训平台;

操作系统:CentOS 7

JDK安装包:jdk-8u291-linux-*64.tar.gz

Hadoop安装包:hadoop2.7.4.tar.gz

虚拟机:三台

1.2.3 安装准备

需要提前创建三台虚拟机

1.2.4 实验步骤

步骤一 配置及测试虚拟机

  1. 更改主机名(注意:需要在三台虚拟机都执行以下操作)使用nmtui命令设置主机名

图1.2.1 修改主机名

2、使用电脑方向键选择设置系统主机名然后回车

图1.2.2 选择设置

3、把三台虚拟机的主机名分别修改为hadoop01,hadoop02,hadoop03回车确定

1.2.3 修改主机名

4、使用命令vi /etc/sysconfig/network,进入该文件后a键开始编辑,删除原有文档,修改为如下所示文档(注意:在其他两台虚拟机中操作时,要对应好之前修改好的主机名,再分别设置为hadoop02和hadoop03)修改完成后esc键退出编辑,冒号wq保存退出

配置参数如下:

NETWORKING=yes

HOSTNAME=hadoop01

1.2.4 修改network文件

5、配置ip映射,首先用ifconfig命令查看自己三台虚拟机的IP地址分别是什么(注意:如果命令用不了请安装该命令yum install net-tools ifconfig。)

图1.2.5 查看IP地址

6、使用vi /etc/hosts命令进入该文件,在原有文件下增加如图内容,保存退出。其他两台虚拟机重复此操作(注意:你的IP地址要和主机名对应)

图1.2.6 修改hosts文件

7、修改完成后使用reboot命令重启客户端(三台虚拟机都需重启)

图1.2.7 重启客户端

8、映射配置测试,在hadoop01节点中使用ping hadoop02ping hadoop03命令进行测试,结果如下;

图1.2.8 映射配置测试

9、在hadoop02节点中使用ping hadoop03命令进行测试,结果如下;

图1.2.9 映射配置测试

步骤二 安装配置及测试SSH

1、我们可以用命令rpm -qa | grep ssh来检查是否安装了SSH服务,我们看到有五个包,我们的SSH服务已经安装好了

1.2.10 检查SSH服务

2、再使用命令ps -e | grep sshd来查看SSH服务是否启动,结果证明虚拟机默认启动了SSH服务

图1.2.11 检查SSH是否启动

3、如果虚拟机没有安装SSH,那我们需要用命令yum install openssh-server来安装SSH

图1.2.12 安装SSH

4、配置SSH的免密登录,因为Hadoop的节点很多,每次在主节点中启动从节点都需要输入密码,所以我们要配置好免密登录。我们从三台虚拟机分别输入以下命令生成公钥和秘钥(注意:三台虚拟机都需要输入该命令生成公钥和秘钥)然后每台虚拟机回车三次即可。

图1.2.13 生成公钥和秘钥

5、Hadoop01的公钥和秘钥生成后,需要把Hadoop01节点的公钥和秘钥分发给hadoop02和hadoop03虚拟机。命令:ssh-copy-id -i /root/.ssh/id_rsa.pub root@hadoop01使用该命令将hadoop01虚拟机的公钥秘钥分发给hadoop02和hadoop03虚拟机,其中会输入root账户的密码,如下图。

图1.2.14 公钥和秘钥分发

6、Hadoop02的公钥和秘钥生成后,需要把Hadoop02节点的公钥和秘钥分发给hadoop01和hadoop03虚拟机。命令:ssh-copy-id -i /root/.ssh/id_rsa.pub root@hadoop02,使用该命令将hadoop02虚拟机的公钥秘钥分发给hadoop01和hadoop03虚拟机,图片同上。

7、Hadoop03的公钥和秘钥生成后,需要把Hadoop03节点的公钥和秘钥分发给hadoop01和hadoop02虚拟机。命令:ssh-copy-id -i /root/.ssh/id_rsa.pub root@hadoop03,使用该命令将hadoop03虚拟机的公钥秘钥分发给hadoop01和hadoop02虚拟机,图片同上。

8、SSH免密登录测试,在hadoop01节点中使用命令 ssh hadoop02,在hadoop02节点中使用命令 ssh hadoop03,在hadoop03节点中使用命令 ssh hadoop01,或直接在hadoop01节点中使用,效果如下。如果从源主机到目的主机的登录过程中,出现需要输入密码的情况,那么需要检查是否已经成功将源主机的公钥文件发送到目的主机中。

图1.2.15 SSH免密登录测试

步骤三 安装配置JDK(hodoop和java的安装包我们平台虚拟机中已经下载好,同学们可以跳过下载步骤,直接解压即可,安装包存放地址为/root/下载)

1、由于Hadoop是由Java语言开发的,Hadoop集群的使用依赖于Java环境,因此安装Hadoop之前,需要先安装并配置好JDK。下载JDK,网址:Java Downloads | Oracle,在我们的虚拟机中就可以直接下载,在虚拟机桌面找到Fireox软件,双击打开直接在网址栏中输入网址即可,如下。(hodoop和java的安装包我们平台虚拟机中已经下载好,同学们可以跳过下载步骤,直接解压即可,安装包存放地址为/root)

图1.2.16 打开Fireox软件

2、我们进入到网站页面看到的是Java SE 16版本的,我们用8版本的,下滑页面找到我们需要的8版本。

图1.2.17 网站页面

3、找到Java SE 8版本后选择右侧的JDK Download,打开后找到如下图JDK的版本,jdk-8u291-linux-*64.tar.gz 大小是138.22MB的,开始下载

图1.2.18 下载JDK

4、我们下载完JDK后会自动生成一个名为“下载”的文件夹,找到“下载”文件夹(当然你可以把它放到自己的任何文件夹,文件夹最好不要用中文命名),最后从终端进入到放有JDK文件的目录,创建并开始解压安装到/export/servers文件夹。

图1.2.19 下载完成

5、解压命令:tar -zxvf jdk-8u291-linux-*64.tar.gz -C /export/servers如下图。

图1.2.20 解压JDK

6、解压后我们可以到解压目录下查看,蓝色的文件便是我们解压后的文件,如下图

图1.2.21 解压完成

7、由于解压后名字不方便之后使用所以我们直接重命名为jdk,如下图,命令:mv jdk1.8.0_291/ jdk

图1.2.22 重命名

8、安装解压完成后,我们开始配置JDK的环境变量,命令:vi /etc/profile进入该文件后,找到最后一行,我们把下文的参数添加到该文件最后一行,然后保存退出。配置好后这个文件是不会生效的,需要我们自己使用source /etc/profile命令使他生效。如下图。(注意:以下三行参数一定要把地址写对,如果你的地址是自己修改的,需要把第一行中的地址写为你修改的地址)

配置参数如下:

export JAVA_HOME=/export/servers/jdk

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

图1.2.23 修改profile文件

9、上述操作完成后,我们想要知道我们的JDK有没有安装成功,所以要验证JDK的安装与配置是否有错,使用java -version命令来验证我们安装的JDK,如下图,我们可以看到JDK的版本以及其他信息后,我们的JDK安装就完成了。

图1.2.24 验证JDK的安装与配置

步骤四 Hdaoop安装解压与配置(下载过程和下载JDK一样,同样在我们的虚拟机中就可以下载)打开后我们可以看到有一个hadoop2.7.4.tar.gz ,254MB的文件,下载就可以)

1、下载hadoop安装包,网址为:Index of /dist/hadoop/common,我们进入网站后下滑页面找到hadoop-2.7.4版本,这个版本相对稳定,然后打开。 

图1.2.25 下载hadoop

2、下载成功后依旧在“下载”文件夹中,找到虚拟机桌面的文件系统,找到root目录,找到下载目录打开,如下图。(当然同学也可以放到自己的文件夹)

图1.2.26 下载完成

3、下载成功后,我们开始解压,命令:tar -zxvf hadoop-2.7.4.tar.gz -C /export/servers,解压成功后进入export/servers目录,就可以看到我们解压后的文件,如下图。使用命令mv hadoop-2.7.4 hadoop进行重命名

图1.2.27解压完成

4、和JDK一样,我们安装完成后都需要配置环境变量,使用命令vi /etc/profile进入到该文件后,依旧在最后一行进行配置,参数如下(以下两行参数一定要把地址写对,如果你的地址是自己修改的,需要把第一行中的地址写为你修改的地址)修改完成后保存退出。使用命令source /etc/profile让修改完的配置生效。

配置参数如下:

export HADOOP_HOME=/export/servers/hadoop

export PATH=:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

图1.2.28 配置profile文件

5、Hadoop是否安装配置成功我们还需要进行环境验证,使用命令hadoop version来验证我们的Hadoop环境是否安装成功,如下图,我们可以看到Hadoop的版本号以及其他信息,证明我们的Hadoop安装成功。

图1.2.29 hadoop环境验证

步骤五 Hadoop集群主节点的配置 (注意:主节点的配置最好在hadoop01虚拟机上完成)

1、使用命令cd /export/servers/hadoop/etc/hadoop进入到hadoop安装目录下,再进入到hadoop文件夹中,此文件夹放置的是hadoop的配置文件,我们需要更改其中几个文件,如下图。

图1.2.30 进入到hadoop安装目录

2、使用vi命令来更改名为hadoop-env.sh的文件,命令为vi hadoop-env.sh,打开文件后找到JAVA_HOME相关配置,把等于号后边的配置改为JDK的安装路径。(注意:地址要写对,是JDK的安装路径,不是hadoop。)然后保存退出,如图

1.2.31 配置hadoop-env.sh文件

3、修改core-site.xml文件,命令为vi core-site.xml,进入文档后,我们找到最后两行替换为以下配置,然后保存退出。

<property>

<name>fs.defaultFS</name>

<value>hdfs://hadoop01:9000</value>

</property>

<property>

<name>hadoop.tmp.dir</name>

<value>/export/servers/hadoop/tmp</value>

</property>

图1.2.32 替换配置文件

4、修改hdfs-site.xml文件,命令为vi hdfs-site.xml。进入文档后,我们找到最后两行替换为以下配置,如下。然后保存退出。

<property>

<name>dfs.replication</name>

<value>3</value>

</property>

<property>

<name>dfs.namenode.secondary.http-address</name>

<value>hadoop02:50090</value>

</property>

图1.2.33 替换配置文件

5、修改mapred-site.xml文件,因为文件中只有mapred-site.xml.template 文件,所以我们需要修改成 mapred-site.xml文件,命令为cp mapred-site.xml.template mapred-site.xml,如图。

图1.2.34 修改mapred-site.xml文件

然后打开mapred-site.xml文件,命令为vi mapred-site.xml,进入文档后,我们找到最后两行替换为以下配置,如下。然后保存退出。

<!--指定MapReduce运行时框架,这里指定在Yarn上,默认是local -->

<property>

<name>mapreduce.framework.name</name>

<value>yarn</value>

</property>

图1.2.35 替换配置文件

6、修改yarn-site.xml文件,命令为vi yarn-site.xml。进入文档后,我们找到最后两行替换为以下配置,如下。然后保存退出。

<property>

<name>yarn.resourcemanager.hostname</name>

<value>hadoop01</value>

</property>

<property>

<name>yarn.nodemanager.aux-services</name>

<value>mapreduce_shuffle</value>

</property>

图1.2.36 替换配置文件

7、修改slaves文件,命令为vi slaves,进入文档后,我们删除原有文件然后替换为以下内容。保存退出。

配置参数如下:

hadoop01

hadoop02

hadoop03

图1.2.37 修改slaves文件

8、集群主节点配置完成后,还有子节点,子节点的配置只需要我们把主节点的配置分发到子节点上就可以。使用如下命令把主节点配置分发到子节点,如下所示,分发完之后要在hadoop02和hadoop03上执行source /etc/profile命令使它生效

scp /etc/profile hadoop02:/etc/profile

scp /etc/profile hadoop03:/etc/profile

scp -r /export/servers hadoop02:/export/servers

scp -r /export/servers hadoop03:/export/servers

图1.2.38 分发hadoop01到子节点hadoop02

图1.2.39 分发hadoop01到子节点hadoop03

步骤六 Hadoop集群测试

1、我们集群搭建完成后,要测试集群是否搭建成功,在测试之前,我们还需要完成以下操作,格式化系统文件,初次启动HDFS集群时,必须要对主节点进行格式化处理,格式化文件系统指令如下。(注意:要在主节点进行格式化操作,并且只有我们第一次启动HDFS的时候进行格式化,之后不用再执行此操作)。命令:hdfs namenode -formathadoop namenode -format,然后就可以开始启动hadoop集群了,针对Hadoop集群的启动,需要启动内部包含的HDFS集群和YARN集群两个集群框架。启动方式有两种:一种是单节点逐个启动;另一种是使用脚本一键启动。我们来逐一验证。(注意:如遇启动不了可试着关闭防火墙,命令为:systemctl stop firewalld;关闭防火墙。systemctl disable firewalld.service设置开机禁用防火墙

2、单节点逐个启动

我们需要先在主节点上启动一个脚本,命令为:hadoop-daemon.sh start namenode(namenode如果启动不了,请重新格式化namenode,命令为:hadoop namenode -format)我们启动完成后怎么查看是否成功呢,使用jps命令来查看,jps命令是用来查看和JAVA相关的进程。

图1.2.40 主节点启动namenode并查看

然后再启动从节点,(注意:从节点hadoop02和hadoop03中只需要启动datanode即可)命令:hadoop-daemon.sh start datanode

图1.2.41 从节点hadoop02启动datanode并查看

图1.2.42 从节点hadoop03启动datanode并查看

3、脚本一键启动和关闭

在主节点hadoop01上执行指令“start-dfs.sh”或“stop-dfs.sh”启动/关闭所有HDFS服务进程;

图1.2.43 启动HDFS服务进程

图1.2.44 关闭HDFS服务进程

在主节点hadoop01上执行指令“start-yarn.sh”或“stop-yarn.sh”启动/关闭所有YARN服务进程;

图1.2.45 启动YARN服务进程

图1.2.46 关闭YARN服务进程

在主节点hadoop01上执行“start-all.sh”或“stop-all.sh”指令,直接启动/关闭整个Hadoop集群服务

图1.2.47 启动整个Hadoop集群服务

图1.2.48 关闭整个Hadoop集群服务

  • 18
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值