Hadoop运行环境搭建
模板虚拟机安装
安装VMWare
如果已经有就可以跳过了
官网下载
百度云下载 提取码 57jl
虚拟机的安装和正常的QQ安装都一样,一路下一步,如果需要更改安装路径,自行更改
最后需要输入密钥,密钥这个东西,网上百度一堆堆, 希望大家支持正版,嗯,就是这样
安装CentOS7
如果已经有CentOS7的虚拟机了,也没有必要重新安装,直接进行下一个环节配置就好了
首先要准备好镜像文件,这里百度网盘里我准备好了,也可以自己准备。百度云下载 提取码 1kvy
下面开始创建虚拟机
选择创建新的虚拟机
选择典型配置类型
选择稍后安装操作系统
选择系统版本
自定义虚拟机名称和位置,这里名称可以自己随便写,只要自己知道就好了
选择给系统分配的储存,暂时选择30g够用。这个不是一下就占30G,没有关系,存储为单个文件方便管理
选择自定义硬件
自定义硬件 这里我们取消打印机然后选择一下内存和CPU,内存和CPU分别给1G和2个,如果电脑自身内存比较大,也可以多给
我们可以看到这里就是我们创建的虚拟机了
点击编辑虚拟设置,加入我们之前准备好的镜像并设置网络
网络模式我们选择NAT模式
上面的步骤都做好后,就可以点击开启此虚拟机进行开机了
选择第一个,install CentOS 7,这里是用方向键来控制上下来选择的,回车确定
选择语言
设置时间和日期
可以进行最小安装也可以安装桌面版的,这里我装一个桌面版的
选择安装位置,按图中标号依次点击
手动设置分区
分别创建/boot区、swap交换分区、根分区/
注释:Linux系统最简单的分区方案:
- 分/boot区,给200M,/boot放启动文件。
- 分交换分区(交换空间)swap,看内存总大小,如果内存足够大,这个空间就要设置太大了。如果内存小于2G。那么这个空间设置成内存的2倍大小。
- 所有空间给/(根分区)
按照图中顺序进行操作
依此类推,在点击加号,挂载其他分区如下图
最后点击完成并接受更改设置KDUMP
设置网络和主机名
上面都配置好后,点击开始安装,安装过程中,设置一下用户名密码
再创建一个用户
等一会安装完成后,点击重启就可以了,然后我们使用用户名密码进行登录
第一次登录要进行一些简单的想到操作,直接都点下一步过去就可以了,没有什么关系,需要输入许可证的话还是那句话,支持正版
配置
网络配置
首先设置一下网络,这里为了模拟实际的操作效果,我们还是使用远程登录的方式来操作虚拟机,所以作为一个服务器,ip地址不停变化是不可以的。
在VMWare的编辑中,选择虚拟网络编辑器

查看NAT模式的子网IP,点击NAT设置,编辑网关

在windows的网络设置里,找到虚拟机NAT模式的网卡进行配置

写好网关和DNS

在虚拟机中,切换到root用户,进行网络设置,ens33
是我们的网卡,在linux中一切皆文件
1 | vim /etc/sysconfig/network-scripts/ifcfg-ens33 |
编辑网卡配置,获取方式为 static
,设置ip地址,网关,DNS

创建网络映射,这个是什么概念就是每次我们都输入ip地址,比较抽象,我们用一个名字来映射ip地址
1 | vim /etc/hosts |
输入刚才配置的ip地址和想要对应的名字

主机名配置
下面设置一下主机名,不论创建的时候是什么,我们都可以进行更改

最后输入 reboot
重启一下生效
测试是否配置成功,输入hostname
看是不是我们修改的,输入ifconfig
查看ip地址,最后 ping baidu.com
看能否连接到网络

安装几个包
- 安装epel-release
注:Extra Packages for Enterprise Linux是为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS和Scientific Linux。相当于是一个软件仓库,大多数rpm包在官方 repository 中是找不到的)1
yum install -y epel-release
- 注意:如果Linux安装的是最小系统版,还需要安装如下工具;如果安装的是Linux桌面标准版,不需要执行如下操作
net-tool:工具包集合,包含ifconfig等命令
1 | yum install -y net-tools |
vim:编辑器
1 | yum install -y vim |
关闭防火墙
在企业开发时,通常单个服务器的防火墙时关闭的。公司整体对外会设置非常安全的防火墙
1 | systemctl stop firewalld |
给普通用户root权限
1 | vim /etc/sudoers |
修改/etc/sudoers文件,在%wheel这行下面添加一行,如下所示:
1 | ## Allow root to run any commands anywhere |
yjr1100
这一行不要直接放到root行下面,因为所有用户都属于wheel组,先配置了yjr1100
具有免密功能,但是程序执行到%wheel行时,该功能又被覆盖回需要密码。所以yjr1100
要放到%wheel这行下面。
在/opt 目录下创建文件夹 并更改所属组
1 | mkdir /opt/module |

卸载虚拟机自带的JDK
注意:如果虚拟机是最小化安装不需要执行这一步。
1 | [root@hadoop100 ~]# rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps |
rpm -qa:查询所安装的所有rpm软件包
grep -i:忽略大小写
xargs -n1:表示每次只传递一个参数
rpm -e –nodeps:强制卸载软件
到此,我们的模板虚拟机已经安装好了
克隆虚拟机
克隆
克隆前要先把当前虚拟机关机,然后进行克隆

选择完整克隆,起个名字,选个位置


重复上面的步骤,克隆 hadoop102,hadoop104
修改ip和hostname
1 | vim /etc/sysconfig/network-scripts/ifcfg-ens33 |

1 | hostnamectl set-hostname hadoop102 |

重复上面两个操作,把hadoop103、hadoop104 都进行修改,并在hadoop102,hadoop103,hadoop104的/etc/hosts
中都加入映射
1 | 192.168.109.100 hadoop100 |
最后我们在远程链接工具里进行链接就可以
安装JDK和Hadoop
安装JDK
之前已经删除了自带的JDK,我们要自己准备JDK和Hadoop安装包。百度云下载 提取码 9mzl
通过远程工具,将JDK和Hadoop安装包上传到hadoop102的服务器中放在 /opt/software/
目录下

使用下面命令指定安装在 /opt/module/
目录下
1 | tar -zxvf jdk-8u212-linux-x64.tar.gz -C /opt/module/ |

为java添加环境变量
查看 /etc/profile
文件中有如下内容,意思是读取 /etc/profile.d/
目录下的所有.sh
文件
1 | for i in /etc/profile.d/*.sh ; do |
所以我们去/etc/profile.d/
目录下写一下java的环境变量
1 | sudo vim /etc/profile.d/my_env.sh |
在文件中输入下面内容
1 | #java 环境 |
最后刷新一下环境变量
1 | source /etc/profile |
测试是否成功
1 | java -version |

看到如图的回显,就是安装成功了
安装Hadoop
使用下面命令指定安装在 /opt/module/
目录下
1 | tar -zxvf hadoop-3.1.3.tar.gz -C /opt/module/ |
安装好后如图所示

把hadoop也添加到环境变量中
1 | sudo vim /etc/profile.d/my_env.sh |
在文件中添加下面内容
1 | #java 环境 |

最后刷新一下环境变量
1 | source /etc/profile |
测试是否安装成功,直接输入hadoop,有如下回显则成功
1 | hadoop |

hadoop目录结构
进入 hadoop安装目录,我们可以看到如下图

bin
:此目录中存放 Hadoop
、HDFS
、YARN
和 MapReduce
运行程序和管理软件。etc
:存放 Hadoop
配置文件。include
: 类似 C 语言的头文件lib
:本地库文件,支持对数据进行压缩和解压。libexe
:同 libsbin
:Hadoop 集群启动、停止命令share
:说明文档、案例和依赖 jar 包。