0


Hadoop集群部署-(完全分布式模式,hadoop-2.7.4)


一、Linux环境准备

1.1 虚拟机安装

相关软件下载准备:(推荐)

  • 虚拟机运行环境:VMware 16.1.1
  • 映像文件:CentOS-7-x86_64-DVD-1810.iso
  • 远程登录工具:Xshell-7.0.0090.exe
  • Xftp传输工具:Xftp-7.0.0111p.exe首先掌握VMware的下载与安装,有linux学习基础的同学可以略看。 参考链接:https://mp.weixin.qq.com/s/CUiauodcjCFPIXEFEx8fOw 【软件名称】: VMware 16.1.1 【软件大小】:568MB 【系统要求】:win7/win8\win10/win11或以上 【下载链接】:https://pan.baidu.com/s/1bY1swCAxWjTIpOROlXaqnQ?pwd=1234 【提取码】:12341.对下载的压缩包进行解压缩image2.打开解压后的压缩包,进行如下步骤image3.下一步image4.接受许可,下一步image5.更改软件安装目录(自己在某个盘新建一个干净的文件夹),下一步image6. 取消红框内的勾选框,点下一步image7. 点下一步image8.点击安装image9.输入许可证激活image 输入以下三个中任意一个即可,输入后,点完成即可。 ZF3R0-FHED2-M80TY-8QYGC-NPKYF YF390-0HF8P-M81RQ-2DXQE-M2UT6 ZF71R-DMX85-08DQY-8YMNC-PPHV810.安装成功,桌面显示图标。image11.打开WMware16虚拟机,右键以管理员身份运行。image12.首页创建新的虚拟机,接下来按照截图步骤创建虚拟机。image13image14 关于硬件兼容性,根据安装时系统自动选择的版本项,不用变image15image16image17.image18.image19image20image21image22image23image24image25image26image27,找到Centos的iso镜像文件保存位置,并选择它。image28image29image30image31image32image33image34image35image36image37.设置root用户的密码为123456;设置普通用户的用户名(~自定义)和密码(123456)image38image39
mkdir -p /export/data
mkdir -p /export/servers
mkdir -p /export/software

image

1.2 Linux系统网络配置

详细步骤如下:

  1. 虚拟机首页菜单栏,找到【编辑】右键,选择【虚拟网络编辑器】在这里插入图片描述 2.修改子网IP在这里插入图片描述 3.选择【NAT设置】在这里插入图片描述 4.将网关IP改为:192.168.121.2在这里插入图片描述5. DHCP设置在这里插入图片描述 ip信息修改为红色框内的内容在这里插入图片描述 之后点击【应用】,【确定】在这里插入图片描述 6.查看IP配置文件并修改ip配置信息
vim /etc/sysconfig/network-scripts/ifcfg-ens33

修改配置文件时:
• 将DHCP自动分配模式改为static
• 添加ip地址,网络类型、网络范围和网络位(即ip地址前三部分)必须和虚拟网络编辑器中相同,主机位(最后一部分)自定义,这里hadoop01用的IP为 192.168.121.134。
• 添加网关和域名解析器,和虚拟网络编辑器中相同。
执行过程:(提醒,网络配置信息不能出错,出错了后面网络会不通)
在这里插入图片描述
在这里插入图片描述
7.配置好后,输入如下命令,重启网络。

service network restart

在这里插入图片描述
8. 重启后,请再次查看网络ip,确定ip地址修改成功,之后测试是否能够上网。
终端输入命令:

ipconfig

出现如下信息,表示网络配置成功。
在这里插入图片描述
Ping百度看是否能ping通。
输入命令:

ping www.baidu.com

在这里插入图片描述
9. 接下来修改主机名和hosts映射文件
&查看主机名
输入如下命令:

hostname

在这里插入图片描述
显示出当前虚拟机的主机名为:hadoop01
&修改hadoop01的hosts映射文件
注:后续在hadoop搭建阶段虚拟机比较多,每次访问类似192.168.121.134的ip地址比较麻烦,通常会采用主机名的方式进行配置。
输入如下命令:

vi /etc/hosts

添加下面三条:(其实就是三台虚拟机IP及各自对应的主机名)

192.168.121.134 hadoop01
192.168.121.135 hadoop02
192.168.121.136 hadoop03

在这里插入图片描述
&修改Windows的hosts文件
提醒!!!Windows的hosts文件一般保存在C:\Windows\System32\drivers\etc下,打开hosts文件添加如下内容并保存。
因为C盘里面的文件,修改一些文件需要权限比较高,如果无法保存成功,建议怎么做呢?首先,可以复制hosts文件到桌面,在桌面打开hosts文件修改并保存,之后覆盖原文件。在这里插入图片描述
将hosts文件复制到桌面一份。
添加如下三行映射内容

192.168.121.134 hadoop01
192.168.121.135 hadoop02
192.168.121.136 hadoop03

在这里插入图片描述
将桌面保存后的hosts文件复制到此路径下,C:\Windows\System32\drivers\etc,覆盖掉原来的hosts文件。
.。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

接下来打开Windows的命令提示符窗口,进行测试,直接ping主机名,如果成功,说明修改完成。如下图:在这里插入图片描述
10. 关闭防火墙,防止防火墙开机自启动
hadoop01虚拟机下分别执行下面两条命令:

systemctl stop firewalld
systemctl disable firewalld.service

11. 创建一个普通用户,方便后期登录普通用户加sudo命令执行root权限
• 执行下面命令创建普通用户并修改其密码,用户名为user,密码为123456

useradd user
passwd user

• 执行如下命令,修改相应的配置文件,提高user用户权限,使其具有root对等权限

vim /etc/sudoers

添加如下内容:(缩进根据文本内容自主调整)

user         ALL=(ALL)         NOPASSWD:ALL

注意!!!!user这一行必须放在%wheel这一行下面在这里插入图片描述
• 创建在/opt下创建两个文件夹并修改所属主和所属组

】首先创建module和software文件夹

mkdir /opt/module
mkdir /opt/software

】其次修改新创建的文件夹所属主和所属组为user用户

chown user:user /opt/module
chown user:user /opt/software

】最后输入命令ll:查看module和software的所属主和所属组

ll

在这里插入图片描述
12.安装epel-release,相当于是一个软件仓库

yum install -y epel-release

13.重启虚拟机

reboot

1.3 虚拟机克隆

克隆过程如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
hadoop02克隆完成;

接下来克隆hadoop03。(和克隆hadoop02一样的操作)在这里插入图片描述
在这里插入图片描述
注意!!!hadoop03文件夹就是前面提前在E盘建好的。选择此路径即可。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

到此,三台虚拟机克隆完成;
有时候为了方便管理,我们进行如下步骤;

在这里插入图片描述
将三台虚拟机拖进新建的文件夹中,并排好顺序即可。
在这里插入图片描述
到此虚拟机克隆完成。------------------------------------------------------------------------------

hadoop02和hadoop03克隆完成以后需要参照虚拟机hadoop01的执行过程,配置一些信息。
首先,对于hadoop02,hadoop03:修改其ip配置文件:

vim /etc/sysconfig/network-scripts/ifcfg-ens33

hadoop02主机
在这里插入图片描述
hadoop03主机
在这里插入图片描述

其次****修改主机名为hadoop02,【因为】hadoop02是克隆来的,所以对与hadoop02来说,主机名现在依然是hadoop01,所以需要修改为hadoop02。hadoop03也同样如此。

vi etc/hostname

hadoop02主机
在这里插入图片描述
hadoop03主机
在这里插入图片描述

再次,由于hosts映射文件已经在hadoop01中修改过,即IP与主机名的映射关系,所以在hadoop02,hadoop03这里就不用修改了。
最后,查看网络IP,确定各个主机IP对应是否正确,并测试能否连接外网

  1. hadoop01的IP为192.168.121.134
  2. hadoop02的IP为192.168.121.135
  3. hadoop03的IP为192.168.121.136

注意:一定确保各个主机IP配置正确,且能正常连网。

1.4 SSH服务配置

1. 查看虚拟机是否已经安装了ssh服务。

ps -e | grep sshd

在这里插入图片描述
已经安装有了,因此不需要额外的操作就可以做一个远程连接。
如果没有安装,则执行如下命令:

yum install openssh-server
  1. 在这里借助一款虚拟机远程连接工具【Xshell】, 版本Xftp-7.0.0134p.exe和Xshell-7.0.0134p.exe的软件安装过程,这里不再详述。 远程连接过程如下:具体在这里插入图片描述3. 接下来: 输入相应的用户名:root 输入相应的密码:123456 三台虚拟机连接后的效果:在这里插入图片描述 利用xftp,方面Window和虚拟机之间传输文件。1.新建连接。在这里插入图片描述2. 输入【名称】,【主机名】 确定后,输入相应的用户名root和密码123456在这里插入图片描述 三台虚拟机连接完成后如下:在这里插入图片描述3. 三台主机之间的免密登录。 第一台:hadoop01: 输入命令生成密钥对:
ssh-keygen -t rsa

在这里插入图片描述
输入以下命令,查看生成的公私钥对:

cd .ssh
ls

在这里插入图片描述
同样在hadoop02、hadoop03执行上述同样的操作生成密钥对。
确保三台虚拟机中,都生成了各种的公私钥对。
接下来:
将三台虚拟机的公钥拷贝到一台机器上

  • 对于hadoop01机器:执行命令:ssh-copy-id hadoop01
  • 对于hadoop02机器:执行命令:ssh-copy-id hadoop01
  • 对于hadoop03机器:执行命令:ssh-copy-id hadoop01

在hadoop01虚拟机中,定位到目录.ssh下面,输入ls,可以查看到出现一个文件authorized_keys,此文件保存的就是三台机器的公钥
在这里插入图片描述
再接下来
将此文件authorized_keys发送给其它机器。

scp /root/.ssh/authorized_keys hadoop02:/root/.ssh
scp /root/.ssh/authorized_keys hadoop03:/root/.ssh

在这里插入图片描述
最后试试免密登录是否成功。
即利用ssh+【主机名】,无需输入密码,即可实现对应主机登录,方便后续操作。
在这里插入图片描述

二、JDK的安装配置

安装JDK。
1. 利用xftp软件,将下载好的压缩包上传到虚拟机中。,直接选中【目标文件】左右拖拽即可实现文件快速传输。因此将Windows下保存的jdk的压缩包拖入到右侧的虚拟机下,路径为:/export/software(提前在虚拟机中建好的文件路径)
在这里插入图片描述
2. 先定位到/export/software/目录下,然后ll查看压缩包是否存在,之后利用下面的tar命令进行解压缩

cd /export/software/
tar -zxvf jdk-8u161-linux-x64.tar.gz -C /export/servers/

在这里插入图片描述
3. 查看解压缩后的jdk文件夹,并利用mv命令对文件夹进行重命名。

cd /export/servers/
ls
mv jdk1.8.0_161/ jdk

在这里插入图片描述
4. 配置JDK环境变量

vim /etc/profile

添加如下内容:

#JAVA_HOME
export JAVA_HOME=/export/servers/jdk
export PATH=$PATH:$JAVA_HOME/bin

在这里插入图片描述
5.编辑保存好后,重启使配置文件生效。

source /etc/profile

6. jdk的环境验证

java -version

在这里插入图片描述

三、Hadoop安装及配置

  1. 将hadoop2.7.4的安装包拖入到hadoop01的路径/export/software下。在这里插入图片描述 2.在xshell下的hadoop01节点,定位到此目录/export/software
cd /export/software

之后解压hadoop压缩包。解压后的目标路径为/export/servers

tar -zxvf hadoop-2.7.4.tar.gz -C /export/servers/

在这里插入图片描述
解压成功后,进入到/export/servers目录下

cd /export/servers
ls
#查看解压后的hadoop文件。

在这里插入图片描述
3. 配置Hadoop系统环境变量

 vim /etc/profile

添加如下内容:

export HADOOP_HOME=/export/servers/hadoop-2.7.4
export PATH=:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

在这里插入图片描述

#输入如下命令,使配置文件生效
source /etc/profile
#查看hadoop版本
hadoop version

在这里插入图片描述
4. 接下俩可以随意查看一下hadoop压缩包里面都有哪一些文件
在这里插入图片描述
查看一些重要的配置文件,如下:
在这里插入图片描述
接下来hadoop集群的搭建需要用到这些文件。
5. 配置Hadoop集群主节点。

(1).修改hadoop-env.sh文件。
命令:
vim hadoop-env.sh
添加如下内容:
export JAVA_HOME=/export/servers/jdk

在这里插入图片描述

(2).修改core-site.xml文件
命令:
vim core-site.xml
添加内容如下:
<configuration>
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://hadoop01:9000</value>
        </property>
        <property>
                <name>hadoop.tmp.dir</name>
                <value>/export/servers/hadoop-2.7.4/tmp</value>
        </property>
</configuration>

在这里插入图片描述

  (3). 修改hdfs-site.xml文件
 命令:
  vim hdfs-site.xml
  添加如下内容:
<configuration>
        <property>
                <name>dfs.replication</name>
                <value>3</value>
        </property>
        <property>
                <name>dfs.namenode.secondary.http-address</name>
                <value>hadoop02:50090</value>
        </property>
</configuration>

在这里插入图片描述

(4). 修改mapred-site.xml
#这里我们首先需要拷贝下mapred-site.xml.template文件,命名为mapred-site.xml
命令如下:
cp mapred-site.xml.template mapred-site.xml
接下来编辑此文件
命令:
vim mapred-site.xml
添加的内容如下:(指定MapReduce运行时的框架,这里指定在Yarn上)
<configuration>
        <property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
        </property>
</configuration>

在这里插入图片描述

(5).修改yarn-site.xml   
#Yarn 分布式资源调度系统。
命令:
vim yarn-site.xml
添加的内容如下:
<configuration>
        <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>hadoop01</value>
        </property>
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
</configuration>

在这里插入图片描述

(6)修改slaves文件,打开该配置文件,先删除里面的内容(默认是localhost)。
命令:
vim slaves
然后添加如下内容:
hadoop01
hadoop02
hadoop03

到此一些集群主节点hadoop01中一些配置配置文件配置完成。
接下来将配置好的文件分发到另外两个节点下hadoop02和hadoop03。

#执行如下四条命令进行分发
> scp /etc/profile hadoop02:/etc/profile
> scp /etc/profile hadoop03:/etc/profile
> scp -r /export/ hadoop02:/ 
> scp -r /export/ hadoop03:/

执行结束后:还需要在hadoop02和hadoop03上执行命令:

source /etc/profile

到此整个hadoop集群的配置就结束了。
还没结束,,,

6.格式化文件系统(在主节点上执行。即hadoop01这台虚拟机上执行)

hdfs namenode -format

注意!!!格式化文件系统这个操作只能在第一次启动hdfs集群时来操作,后面不能再进行格式化)
成功被格式化:
在这里插入图片描述
7. 启动和关闭Hadoop集群
包含HDFS集群和YARN两个集群框架
启动有两种方式:

  • 1 单节点逐个启动
    1. 使用脚本一键启动

这里使用第二种方式,第一种方式自主学习。
使用脚本一键启动

start-dfs.sh或stop-dfs.sh #启动或关闭所有HDFS服务进程
start-yarn.sh或stop-yarn.sh #启动或关闭所有YARN服务进程

对于hadoop01:
在这里插入图片描述
对于hadoop02:
在这里插入图片描述
在这里插入图片描述
对于hadoop03:
在这里插入图片描述
注:jps命令是查看开启的进程。
确保:
hadoop01有5个,hadoop02有4个,hadoop03有3个
8.最后,查看HDFS和YARN集群状态
在浏览器访问hadoop01:50070或者192.168.121.134:50070(格式为:主机名或IP地址+端口号)查看HDFS集群状态
在这里插入图片描述
浏览器搜索hadoop01:8088或者192.168.121.134:8088(格式为:主机名或IP地址+端口号)可查看YARN集群管理页面.
在这里插入图片描述
至此,hadoop集群搭建成功!!!


本文转载自: https://blog.csdn.net/maxuecsdn123456/article/details/132382429
版权归原作者 Mishell# 所有, 如有侵权,请联系我们删除。

“Hadoop集群部署-(完全分布式模式,hadoop-2.7.4)”的评论:

还没有评论