Hadoop教程

Hadoop运行环境搭建

本文主要是介绍Hadoop运行环境搭建,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录

  • 测试环境
  • 网络配置
    • VMware的网络配置
    • Windows的网络配置
    • 虚拟机网络IP修改地址配置
    • 修改主机名和hosts文件
  • Hadoop运行环境搭建
    • 模拟虚拟机环境准备
    • 克隆虚拟机
    • 在hadoop102安装JDK
    • 在hadoop102安装Hadoop
    • Hadoop目录结构


测试环境

Linux系统版本:CentOS 7 x86
Hadoop版本:hadoop-3.1.3
终端模拟软件:SecureCRT
Java版本:jdk-8u162-linux-x64

安装模板虚拟机,IP地址192.168.10.100、主机名称hadoop100、内存4G、硬盘50G


网络配置

VMware的网络配置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
然后全部点击确定,VMware的网络配置就好了。


Windows的网络配置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
按如上格式修改IP信息(地址,网关,DNS服务器),修改完毕后全部点击确定退出。


虚拟机网络IP修改地址配置

1)修改网络IP地址为静态IP地址,避免IP地址经常变化,从而方便节点服务器间的互相通信。

[root@hadoop100 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 

2)以下加粗的项必须修改,有值的按照下面的值修改,没有该项的则需要增加。

YPE="Ethernet"    #网络类型(通常是Ethemet)
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"   #IP的配置方法[none|static|bootp|dhcp](引导时不使用协议|静态分配IP|BOOTP协议|DHCP协议)
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"   
UUID="e83804c1-3257-4584-81bb-660665ac22f6"   #随机id
DEVICE="ens33"   #接口名(设备,网卡)
ONBOOT="yes"   #系统启动的时候网络接口是否有效(yes/no)

#IP地址
IPADDR=192.168.10.100  
#网关  
GATEWAY=192.168.10.2      
#域名解析器
DNS1=192.168.10.2

4)执行systemctl restart network命令,重启网络服务。如果报错,则执行“reboot”命令,重启虚拟机

[root@hadoop100  ~]# systemctl restart network

5)使用ifconfig命令查看当前IP

[root@hadoop100  ~]# ifconfig

在这里插入图片描述
6)保证Linux系统ifcfg-ens33文件中IP地址、虚拟网络编辑器地址和Windows系统VM8网络IP地址相同


修改主机名和hosts文件

1)修改主机名称

[root@hadoop100 ~]# vim /etc/hostname
hadoop100

2)配置Linux克隆机主机名称映射hosts文件,打开/etc/hosts

[root@hadoop100 ~]# vim /etc/hosts

添加如下内容

192.168.10.100 hadoop100
192.168.10.101 hadoop101
192.168.10.102 hadoop102
192.168.10.103 hadoop103
192.168.10.104 hadoop104
192.168.10.105 hadoop105
192.168.10.106 hadoop106
192.168.10.107 hadoop107
192.168.10.108 hadoop108

3)重启克隆机hadoop102

[root@hadoop100 ~]# reboot

4)修改windows的主机映射文件(hosts文件)

(1)如果操作系统是window7,可以直接修改

(a)进入C:\Windows\System32\drivers\etc路径
(b)打开hosts文件并添加如下内容,然后保存

(2)如果操作系统是window10,先拷贝出来,修改保存以后,再覆盖即可

(a)进入C:\Windows\System32\drivers\etc路径
(b)拷贝hosts文件到桌面
(c)打开桌面hosts文件并添加如下内容
(d)将桌面hosts文件覆盖C:\Windows\System32\drivers\etc路径hosts文件
192.168.10.100 hadoop100
192.168.10.101 hadoop101
192.168.10.102 hadoop102
192.168.10.103 hadoop103
192.168.10.104 hadoop104
192.168.10.105 hadoop105
192.168.10.106 hadoop106
192.168.10.107 hadoop107
192.168.10.108 hadoop108

Hadoop运行环境搭建

模拟虚拟机环境准备

1)hadoop100虚拟机配置要求如下

(1)使用yum安装需要虚拟机可以正常上网,yum安装前可以先测试下虚拟机联网情况

[root@hadoop100 ~]# ping www.baidu.com
PING www.baidu.com (14.215.177.39) 56(84) bytes of data.
64 bytes from 14.215.177.39 (14.215.177.39): icmp_seq=1 ttl=128 time=8.60 ms
64 bytes from 14.215.177.39 (14.215.177.39): icmp_seq=2 ttl=128 time=7.72 ms

(2)安装epel-release

注:Extra Packages for Enterprise Linux是为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS和Scientific Linux。相当于是一个软件仓库,大多数rpm包在官方 repository 中是找不到的)

[root@hadoop100 ~]# yum install -y epel-release

(3)注意:如果Linux安装的是最小系统版,还需要安装如下工具;如果安装的是Linux桌面标准版,不需要执行如下操作

 net-tool:工具包集合,包含ifconfig等命令

[root@hadoop100 ~]# yum install -y net-tools 

 vim:编辑器

[root@hadoop100 ~]# yum install -y vim

2)关闭防火墙,关闭防火墙开机自启

[root@hadoop100 ~]# systemctl stop firewalld
[root@hadoop100 ~]# systemctl disable firewalld.service
注意:在企业开发时,通常单个服务器的防火墙时关闭的。公司整体对外会设置非常安全的防火墙

3)创建atguigu用户,并修改user用户的密码

[root@hadoop100 ~]# useradd user
[root@hadoop100 ~]# passwd 123456

4)配置atguigu用户具有root权限,方便后期加sudo执行root权限的命令

[root@hadoop100 ~]# vim /etc/sudoers

修改/etc/sudoers文件,在%wheel这行下面添加一行,如下所示:

## Allow root to run any commands anywhere
root    ALL=(ALL)     ALL

## Allows people in group wheel to run all commands
%wheel  ALL=(ALL)       ALL
user   ALL=(ALL)     NOPASSWD:ALL

注意:atguigu这一行不要直接放到root行下面,因为所有用户都属于wheel组,你先配置了atguigu具有免密功能,但是程序执行到%wheel行时,该功能又被覆盖回需要密码。所以atguigu要放到%wheel这行下面。

5)在/opt目录下创建文件夹,并修改所属主和所属组
(1)在/opt目录下创建module、software文件夹

[user@hadoop100 opt]$ sudo mkdir /opt/module
[user@hadoop100 opt]$ sudo mkdir /opt/software

(2)修改module、software文件夹的所有者和所属组均为atguigu用户

[user@hadoop100 opt]$ sudo chown user:123456 /opt/module 
[user@hadoop100 opt]$ sudo chown user:12346 /opt/software

(3)查看module、software文件夹的所有者和所属组

[user@hadoop100 opt]$  ll
总用量 0
drwxr-xr-x. 2 user 123456 6 8月  24 21:16 module
drwxr-xr-x. 2 user 123456 6 8月  24 21:17 software

6)卸载虚拟机自带的JDK
注意:如果你的虚拟机是最小化安装不需要执行这一步。

[root@hadoop100 opt]# rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps 

rpm -qa:查询所安装的所有rpm软件包
grep -i:忽略大小写
xargs -n1:表示每次只传递一个参数
rpm -e –nodeps:强制卸载软件
7)重启虚拟机

[root@hadoop100 ~]# reboot

克隆虚拟机

1)利用模板机hadoop100,克隆三台虚拟机:hadoop102 hadoop103 hadoop104
注意:克隆时,要先关闭hadoop100

2)修改克隆机IP,以下以hadoop102举例说明
(1)修改克隆虚拟机的静态IP

[root@hadoop100 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33

改成

DEVICE=ens33
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
NAME="ens33"
IPADDR=192.168.10.102
PREFIX=24
GATEWAY=192.168.10.2
DNS1=192.168.10.2

(2)保证Linux系统ifcfg-ens33文件中IP地址、虚拟网络编辑器地址和Windows系统VM8网络IP地址相同。

3)修改克隆机主机名,以下以hadoop102举例说明
(1)修改主机名称

[root@hadoop100 ~]# vim /etc/hostname
hadoop102

(2)配置Linux克隆机主机名称映射hosts文件,打开/etc/hosts

[root@hadoop100 ~]# vim /etc/hosts

添加如下内容(上面添加过的不用修改)

192.168.10.100 hadoop100
192.168.10.101 hadoop101
192.168.10.102 hadoop102
192.168.10.103 hadoop103
192.168.10.104 hadoop104
192.168.10.105 hadoop105
192.168.10.106 hadoop106
192.168.10.107 hadoop107
192.168.10.108 hadoop108

4)重启克隆机hadoop102

[root@hadoop100 ~]# reboot

在hadoop102安装JDK

1)卸载现有JDK

注意:安装JDK前,一定确保提前删除了虚拟机自带的JDK。

2)用SecureCRT传输工具将JDK导入到opt目录下面的software文件夹下面

3)在Linux系统下的opt目录中查看软件包是否导入成功

[user@hadoop102 ~]$ ls /opt/software/

看到如下结果:

jdk-8u162-linux-x64.tar.gz

4)解压JDK到/opt/module目录下

[user@hadoop102 software]$ tar -zxvf jdk-8u162-linux-x64.tar.gz -C /opt/module/

5)配置JDK环境变量
(1)新建/etc/profile.d/my_env.sh文件

[user@hadoop102 ~]$ sudo vim /etc/profile.d/my_env.sh

添加如下内容

#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_162
export PATH=$PATH:$JAVA_HOME/bin

(2)保存后退出

:wq

(3)source一下/etc/profile文件,让新的环境变量PATH生效

[user@hadoop102 ~]$ source /etc/profile

6)测试JDK是否安装成功

[user@hadoop102 ~]$ java -version

如果能看到以下结果,则代表Java安装成功。

java version "1.8.0_162"
Java(TM) SE Runtime Environment (build 1.8.0_162-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.162-b12, mixed mode)

注意:重启(如果java -version可以用就不用重启)

[user@hadoop102 ~]$ sudo reboot

在hadoop102安装Hadoop

1)用SecureCRT文件传输工具将hadoop-3.1.3.tar.gz导入到opt目录下面的software文件夹下面

2)进入到Hadoop安装包路径下

[user@hadoop102 ~]$ cd /opt/software/

3)解压安装文件到/opt/module下面

[user@hadoop102 software]$ tar -zxvf hadoop-3.1.3.tar.gz -C /opt/module/

4)查看是否解压成功

[user@hadoop102 software]$ ls /opt/module/
hadoop-3.1.3

5)将Hadoop添加到环境变量
(1)获取Hadoop安装路径

[user@hadoop102 hadoop-3.1.3]$ pwd
/opt/module/hadoop-3.1.3
(2)打开/etc/profile.d/my_env.sh文件
[user@hadoop102 hadoop-3.1.3]$ sudo vim /etc/profile.d/my_env.sh

在my_env.sh文件末尾添加如下内容:(shift+g)

#HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop-3.1.3
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

保存并退出: :wq

(3)让修改后的文件生效

[user@hadoop102 hadoop-3.1.3]$ source /etc/profile

6)测试是否安装成功

[user@hadoop102 hadoop-3.1.3]$ hadoop version
Hadoop 3.1.3

7)重启(如果Hadoop命令不能用再重启虚拟机)

[user@hadoop102 hadoop-3.1.3]$ sudo reboot

Hadoop目录结构

1)查看Hadoop目录结构

[user@hadoop102 hadoop-3.1.3]$ ll
总用量 176
drwxr-xr-x. 2 user user    183 9月  12 2019 bin
drwxr-xr-x. 3 user user     20 9月  12 2019 etc
drwxr-xr-x. 2 user user    106 9月  12 2019 include
drwxr-xr-x. 3 user user     20 9月  12 2019 lib
drwxr-xr-x. 4 user user    288 9月  12 2019 libexec
-rw-rw-r--. 1 user user 147145 9月   4 2019 LICENSE.txt
-rw-rw-r--. 1 user user  21867 9月   4 2019 NOTICE.txt
-rw-rw-r--. 1 user user   1366 9月   4 2019 README.txt
drwxr-xr-x. 3 user user   4096 9月  12 2019 sbin
drwxr-xr-x. 4 user user     31 9月  12 2019 share

2)重要目录
(1)bin目录:存放对Hadoop相关服务(hdfs,yarn,mapred)进行操作的脚本
(2)etc目录:Hadoop的配置文件目录,存放Hadoop的配置文件
(3)lib目录:存放Hadoop的本地库(对数据进行压缩解压缩功能)
(4)sbin目录:存放启动或停止Hadoop相关服务的脚本
(5)share目录:存放Hadoop的依赖jar包、文档、和官方案例

这篇关于Hadoop运行环境搭建的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!