admin 管理员组

文章数量: 887016

虚拟机中安装Hadoop 

1.首先你已经安装好了VMware虚拟机,出错的看我这篇博客:

VMware16安装教程

2.配置Hadoop必须有Java环境,方便忘记操作,建议首先配置Java环境,上篇博客已经详细介绍过,未安装的看这篇:

虚拟机中配置Java环境

后面在介绍一次

3.虚拟机打开终端,使用NAT模式,更新yum源,并使用yum安装net-tools,命令:

 yum upgrade

 yum -y install net-tools

此过程可能需要等会时间,莫急!

4. 查看虚拟机ip、Mac地址【enter后面,复制下来,命令:

ifconfig

我这是修改后的 

5.虚拟机中点击【编辑】-【虚拟网络编辑器】-【NAT模式】-【DHCP设置】,查看起始与结束ip,然后修改ens33网卡配置文件,命令:

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

修改为如下内容: 

BOOTPROTO中的dhcp修改为static

ONBOOT中的no修改为yes

子网掩码默认设置为255.255.255.0

网关的值为将ip地址中最后一段的值改为2

DNS使用免费dns1:8.8.8.8】

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"  #修改
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="612e2009-653a-4506-8bfa-33926ff1b08a"
DEVICE="ens33"
ONBOOT="yes"  #修改
#追加后面
HWADDR=" 00:0c:29:2a:28:b1"   #你的Mac
IPADDR="192.168.138.130"
GATEWAY="192.168.138.2"
NETMASK="255.255.255.0"
DNS1="8.8.8.8"

注意:HWADDR是刚才让你复制的自己裸机Mac地址,这个必须写对, IPADDR必须是在你的DHCP设置中的ip起始到结束的范围内,而且要注意,尽量不要与别人的一样,不然后面不成功!!!

6.重启网络服务,查看是否配置成功,并进行ping百度测试是否成功,命令:

systemctl restart network

ping www.baidu

下图即为成功 

注意:如果重启网卡报错,看我这篇博客:

ping不通,重启网卡报错

7.重启虚拟机后,查看是否连通网络,命令:

reboot

ifconfig

ping www.baidu

我们发现,ens33中的ip已经变化, ping百度也会成功

 注意:这里必须要ping的通百度,说明网络已连接,如果出错ping不通百度,解决方案:

ping不通,重启网卡报错

8.关机虚拟机,进行克隆,右键虚拟机-管理-克隆

从虚拟机的当前状态, 点击下一页,创建完整克隆

命名并存放,建议一个文件夹并将原来的虚拟机改为hadoop01,重命名的为hadoop02和haoop03

 点击完成,完成后关闭

9. 按步骤8再次进行克隆hadoop03,开启虚拟机hadoop02和hadoop03,分别修改主机名为hadoop02和hadoop03,命令:

#hadoop02虚拟机
hostnamectl set-hostname hadoop02

reboot                  

#hadoop03虚拟机
hostnamectl set-hostname hadoop03

reboot                  

10.修改hadoop02的网络配置文件,命令:

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

修改为:

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
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="612e2009-653a-4506-8bfa-33926ff1b08a"
DEVICE="ens33"
ONBOOT="yes"
#追加
HWADDR="00:0c:29:60:12:8f"
IPADDR="192.168.138.131"
GATEWAY="192.168.137.2"
NETMASK="255.255.255.0"
DNS1="8.8.8.8"

注意:HWADDR是ens33后出现的Mac地址,IPADDR与前面的不要一样且在dhcp网段内,网关默认后面一位是2

可能你ifconfig后没有出现ens33,或者重启网卡报错

看这篇:

Mac地址不符,重启网卡报错

同理,配置hadoop03,按照步骤10操作,注意修改HWADDR和IPADDR

11.三台虚拟机都要修改hosts配置文件,hadoop01、hadoop02、hadoop03依次进行,命令:

vi /etc/hosts

修改为:

12. 设置ssh免密登录,在每台虚拟机上执行如下命令;

ssh-keygen 

注意:需要输入一个“y”

此时密钥已经生成,在每台虚拟机上用以下命令复制到hadoop01上:

ssh-copy-id hadoop01

使用如下命令在hadoop01查看,可以看到密钥来源【建议移动一次查看一次】:

cat ~/.ssh/authorized_keys

在复制成功之后,我们使用以下命令分配秘钥给hadoop02,hadoop03

scp -r ~/.ssh/authorized_keys hadoop02:~/.ssh/
 
scp -r ~/.ssh/authorized_keys hadoop03:~/.ssh/

如图所示,我们先输入yes,接着会要我们输入其他主机的密码,如下图

验证免密登录,命令如下:

ssh hadoop01  
 
ssh hadoop02
 
ssh hadoop03

13.配置Hadoop集群,使用远程传输工具将hadoop、JDK安装包传输到/usr/local目录下,用鼠标拖

下面安装hadoop,将hadoop压缩包解压到opt目录下,命令:

cd /usr/local/hadoop-3.2.0

tar -zxvf hadoop-3.2.0.tar.gz -C /usr/local/hadoop-3.2.0

jdk解压方法一样,也在这个目录下进行

14.打开配置文件,命令:

vim /etc/profile

配置hadoop环境变量,在/etc/profile中追加如下内容:

注意:一定要是你自己的路径!!!

export JAVA_HOME=/usr/local/jdk1.8.0_351
export PATH=$PATH:$JAVA_HOME/bin
export HADOOP_HOME=/usr/local/hadoop-3.2.0
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

如果你已经做完步骤2了,就不用在加java环境 

15.使配置文件生效 ,命令:

source /etc/profile

验证是否成功,输入:

hadoop version

java -version

出现下图即为成功

16.创建相关文件,命令

cd /usr/local

cd hadoop-3.2.0/

mkdir tmp

mkdir namenode

mkdir datanode

17.修改相关配置文件

修改hadoop-env.sh文件,在最后追加

vim hadoop-env.sh

#最后追加
export JAVA_HOME=/usr/local/jdk1.8.0_351

修改core-site.xml文件

注意:路径路径!!!看好了,别出错

vim core-site.xml
<configuration>
    <!--用于设置Hadoop的文件系统,由URI指定-->
    <property>
        <name>fs.defaultFS</name>
        <!--用于指定namenode地址在hadoop01机器上-->
        <value>hdfs://hadoop01:9000</value>
    </property>
    <!--配置Hadoop的临时目录,默认/tem/hadoop-${user.name}-->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop-3.2.0/tmp</value>
    </property>
</configuration>

 修改hdfs-site.xml文件,最后追加

vim hdfs-site.xml
<property>
        <name>dfs.replication</name>
        <value>3</value>
</property>

<property>
  <name>dfs.namenode.name.dir</name>
  <value>/usr/local/hadoop-3.2.0/namenode </value>
  <description>/usr/local/hadoop-3.2.0/namenode </description>

修改mapred-site.xml文件,最后追加

vim mapred-site.xml
<property>
        <name>maperduce.framework.name</name>
        <value>yarn</value>
</property>

修改yarn-site.xml文件,最后追加

vi yarn-site.xml
<property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
</property>

18. 初始化 hadoop,命令:

hdfs namenode -format

如图,出现 successfully 说明初始化 hadoop 成功 

输入jps查看进程,如下图

 19.启动 hadoop,输入命令:

start-dfs.sh

 输入jps查看进程

再输入下面命令: 

start-yarn.sh

 输入jps查看进程 ,看到下图最终结果为成功!!

此时,hadoop01配置完成。

hadoop02、hadoop03步骤一样,按步骤来!!

本文标签: 机中 Hadoop