Hadoop-3.1.2完全分布式环境搭建(Windows 10)
Hadoop原理架构本人就不在此赘述了,可以自行百度,本文仅介绍Hadoop-3.1.2完全分布式环境搭建(本人使用三个虚拟机搭建)。
首先,步骤:
① 准备安装包和工具:
-
- hadoop-3.1.2.tar.gz
- jdk-8u221-linux-x64.tar.gz(Linux环境下的JDK)
- CertOS-7-x86_64-DVD-1810.iso(CentOS镜像)
- 工具:WinSCP(用于上传文件到虚拟机),SecureCRTP ortable(用于操作虚拟机,可复制粘贴Linux命令。不用该工具也可以,但是要纯手打命令),VMware Workstation Pro
② 安装虚拟机:本人使用的是VMware Workstation Pro,需要**。(先最小化安装一个虚拟机Master,配置完Hadoop之后再克隆两个Slave)
③ 配置虚拟机:修改用户名,设置静态IP地址,修改host文件,关闭防火墙,安装Hadoop,安装JDK,配置系统环境,配置免密码登录(必要)。
④ 配置Hadoop:配置hadoop-env.sh,hdfs-site.xml,core-site.xml,mepred-site.xml,yarn-site.xml,workers文件(在Hadoop-2×中是slaves文件,用于存放从节点的主机名称,或者IP地址)
⑤ 克隆虚拟机:克隆两个Slave,主机名称分别是Slave1,Slave2。然后修改Slave的Hadoop配置。
⑥ namenode格式化:分别对Master、Slave1,Slave2执行hadoop namenode -format命令。
⑦ 启动hdfs和yarn:在Master上执行start-all.sh命令。待启动完成之后,执行jps命令查看进程,应包含namenode,secondarynamenode,resourcemaneger三个进程。Slave上有datanode,nodemanager进程。
⑧ 检查测试:先修改真实主机的host(IP地址与Master的映射)在浏览器中输入Master:9870回车,进入hdfs,点击上方datanode应该可以看到下面有两个节点;输入Master:8088回车,进入资源调度管理(yarn)
好了,开始吧。二、准备工具
hadoop-3.1.2.tar.tz下载地址:http://mirror.bit.edu.cn/apache/ ... hadoop-3.1.2.tar.gz
jdk-8u221-linux-x64.tar.gz下载地址:https://www.oracle.com/technetwo ... nloads-2133151.html
CentOS下载地址:http://isoredirect.centos.org/ce ... x86_64-DVD-1810.iso
WinSCP下载地址: https://winscp.net/eng/download.php
SecureCRTP ortable下载地址: http://fs2.download82.com/softwa ... able/scrt675_u3.exe
VMware Workstation Pro下载地址:http://download3.vmware.com/soft ... 15.1.0-13591040.exe
附VMware Workstation Pro秘钥:
YG5H2-ANZ0H-M8ERY-TXZZZ-YKRV8
UG5J2-0ME12-M89WY-NPWXX-WQH88
UA5DR-2ZD4H-089FY-6YQ5T-YPRX6
三、安装虚拟机
此步略,详情之后发布
四、配置虚拟机 1.修改用户名:[size=1em]
hostnamectl --static set-hostname Master |
2.设置静态IP地址
首先查看一下原本自动获取到的网关和DNS,记下来
[size=1em][color=blue !important][size=1em]
[color=blue !important]+ View Code
[size=1em]
1 2 3 4 |
[[email protected] ~]# IP routing table |
[size=1em]
1 |
[[email protected] ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33 //修改ifcfg-ens33文件,执行此命令后进入如下界面 |
进入界面后按“I”键进入编辑模式,修改或添加图中标红部分。“static”表示静态地址,“netmask”子网掩码,gateways是网关,设置为上一步查看得到的即可。修改后按“esc”退出编辑模式。输入":wq"保存退出。然后输入以下代码更新网络配置。
[size=1em]
1 |
systemctl restart network |
3.修改hosts文件
注明:本人设置Master的IP地址为192.168.28.132,Slave1和Slave2分别为192.168.28.133,192.168.28.134
输入以下代码修改hosts文件(在真实主机中也需要添加):
[size=1em]
1 |
vi /etc/hosts<br data-filtered="filtered">添加:<br data-filtered="filtered">192.168.28.132 Master<br data-filtered="filtered">192.168.28.133 Slave1<br data-filtered="filtered">192.168.28.134 Slave2 |
4.关闭防火墙
关闭防火墙代码:
[size=1em]
1 2 |
systemctl stop firewalld.service //临时关闭 |
5.安装Hadoop和JDK
先创建两个文件夹:
[size=1em]
1 2 |
mkdir /tools //用来存放安装包 |
使用WinSCP上传压缩包:登录后找到已下载好的压缩包按如下步骤点击上传即可。
上传文件后,虚拟机端进入tools文件夹并解压文件:
[size=1em]
1 2 |
cd /tools //进入tools文件夹 |
6.配置系统环境[size=1em]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
vi ~/.bash_profile |
[size=1em]
1 |
source ~/.bash_profile |
7.配置免密登录(重要)[url=][/url]
ssh-****** -t rsa (直接回车3次)cd ~/.ssh/ssh-copy-id -i id_rsa.pub [email protected] ssh-copy-id -i id_rsa.pub [email protected]ssh-copy-id -i id_rsa.pub [email protected]
测试是否成功配置(在配置完Slave之后测试):
ssh Slave1
可以登录到Slave1节点[url=][/url]
五、配置Hadoop
Hadoop-3.1.2中有许多坑,在2X版本中有些默认的不需要特别配置,但在Hadoop-3.1.2中需要。
hadoop-env.sh配置:
[size=1em]
1 2 3 4 5 6 7 8 9 |
cd /bigdata/hadoop-3.1.2/etc/hadoop/ |
hdfs-site.xml:
[size=1em]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<configuration> |
mapred.site.xml:
[size=1em]
1 2 3 4 5 6 7 8 9 10 |
<configuration> |
yarn-site.xml:
[size=1em]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<configuration> |
core-site.xml:
[size=1em]
1 2 3 4 5 6 7 8 9 10 |
<configuration> |
workers:把默认的localhost删掉
[size=1em]
1 2 |
Slave1 192.168.28.133 |
yarn-env.sh 添加:
[size=1em]
1 2 3 |
YARN_RESOURCEMANAGER_USER=root |
进入/bigdata/hadoop-3.1.2/sbin,修改start-dfs.sh,stop-dfs.sh,都添加:
[size=1em]
1 2 3 4 |
HDFS_DATANODE_USER=root |
六、克隆虚拟机
克隆两个从节点虚拟机,主机名称分别为Slave1,Slave2(需要进入虚拟机中修改),然后分别修改IP地址(具体方法上面有)重启网络,重启虚拟机。
重启完成后进行namenode格式化:分别对Master、Slave1,Slave2执行:
[size=1em]
1 |
hadoop namenode -format |
对Master执行
[size=1em]
1 |
start-all.sh //启动hdfs和yarn |
待完成后用jps查看进程:
[size=1em]
1 2 3 4 5 |
[[email protected] ~]# jps |
两Slave的进程:
[size=1em]
1 2 3 |
包含以下两个: |
七、检查
浏览器输入:在浏览器中输入Master:9870回车,进入hdfs管理页面,点击上方datanode应该可以看到下面有两个节点;
输入Master:8088回车,进入资源调度管理(yarn)
配置到此结束。接下来学习编写Job程序。