在虚拟机上安装Hadoop分布式集群

首先需要的安装包,以下是下载的官网,我配置的三台主机名字分别为node01,node02,node03。
JDK:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Hadoop:http://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-2.8.0/hadop-2.8.0.tar.gz
一.基础配置:
1.配置网络
1)开始宿主机的VMare NAT Service
2)启动网卡:VMware Net 8(在虚拟机的编辑-》虚拟网络编辑器里面)
3)查看VMware虚拟网络编辑器的 VMnet8的Nat设置:
例如:子网:192.168.80.0 ,可设置IP从3开始。
掩码:255.255.255.0
网关:192.168.80.2(你的网关)
DNS:202.196.32.1
4)执行命令,修改配置

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

例如此配置
5)开启网卡:ifup ens33
6)测试:ping baidu.com
2.使用putty或者xshell软件操作linux主机
执行一下命令安装插件
1)yum makecache(用时较长)
2) yum install wget
3)yum install vim
4)yum install openssh-clients
二、java环境配置:(用putty或者Xshell操作)
可以在/opt/SoftWare/下创建一个文件夹Java,把之前下载的jdk上传到这个文件夹之下。
在这个文件夹执行rz,就可以上传啦。
1)rpm -ivh jdk-8u171-linux-x64.rpm (对应自己下载的JDK)
2)增加环境变量:vim /etc/profile
在最后添加(注意自己的版本):

  export JAVA_HOME=/usr/java/jdk1.8.0_171-amd64 
  export PATH=$JAVA_HOME/bin:$PATH 
  export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar ]

3)测试:java -version
出现自己的jdk版本信息说明成功,其他失败。
三:免密登录,三台主机均需执行
1)关闭防火墙:systemctl stop firewalld
2)修改主机名, hostnamectl set-hostname +你要改的名字(如hostnamectl set-hostname Master)
3)修改hosts文件,添加 以下内容:vim /etc/hosts
192.168.80.3 node01
192.168.80.4 node02
192.168.80.5 node03
4)执行代码:ssh master(自己的主机名) 然后输入no即可。
5)进入~/.ssh目录:cd ~/.ssh
6)执行以下代码,一路回车:ssh-keygen -t rsa -P '',出现以下图片,说明成功。在这里插入图片描述
7)将每台机器上的id_rsa.pub公钥内容复制到authorized_keys文件中cp id_rsa.pub authorized_keys
8)将所有的authorized_keys文件进行合并(最简单的方法是将其余两台node主机的文件内容追加到node01主机上,注意这是在node02和node03上面运行的) cat ~/.ssh/authorized_keys | ssh root@node01 'cat >> ~/.ssh/authorized_keys'
9)在Master上面执行: more authorized_keys
10)在三台主机分别测试免密:ssh node01 ssh node02 ssh node03
四:安装Hadoop环境
1)首先在SoftWare下创建Hadoop的目录文件夹。

[root@node01 ~]# cd /opt/SoftWare
[root@node01 ~]# mkdir Hadoop
[root@node01 ~]# cd /opt/SoftWare/Hadoop
[root@node01 Hadoop]# rz
#解压
[root@node01 Hadoop]# tar -zxvf hadoop-2.7.7.tar.gz

2)修改脚本配置文件:

[root@node01 hadoop-2.7.7]# vi etc/hadoop/hadoop-env.sh
#修改JAVA_HOME为以下内容,否则容易出现Hadoop无法启动问题
export JAVA_HOME=/opt/SoftWare/Java/jdk1.8.0_212
[root@node01 hadoop-2.7.7]# vi etc/hadoop/yarn-env.sh
#修改JAVA_HOME为以下内容
export JAVA_HOME=/opt/SoftWare/Java/jdk1.8.0_212
[root@node01 hadoop-2.7.7]# vi etc/hadoop/mapred-env.sh
#修改JAVA_HOME为以下内容:
export JAVA_HOME=/opt/SoftWare/Java/jdk1.8.0_212
​

3)修改核心配置文件:

[root@node01 hadoop-2.7.7]# vi etc/hadoop/core-site.xml
<!--在<configuration></configuration>中间添加一下内容-->
<property>
    <name>fs.defaultFS</name><!--定义Hadoop HDFS中 namenode 的URI和端口【必须配置】-->
    <value>hdfs://node01:9000</value>
</property>
<property>
    <name>hadoop.tmp.dir</name><!--Hadoop运行时临时的存储目录【必须配置】-->
    <value>file:/opt/SoftWare/Hadoop/hadoop-2.7.7/tmp</value>
</property>
<property>
    <name>io.file.buffer.size</name><!--用作序列化文件处理时读写buffer的大小【可以不配置】-->
    <value>131702</value>
</property>


HDFS 配置文件

[root@node01 hadoop-2.7.7]# vi etc/hadoop/hdfs-site.xml
<!--在<configuration></configuration>中间添加一下内容-->
<property>
    <name>dfs.namenode.name.dir</name>
    <value>file:/opt/SoftWare/Hadoop/hadoop-2.7.7/dfs/name</value>
</property>
<property>
    <name>dfs.datanode.data.dir</name>
    <value>file:/opt/SoftWare/Hadoop/hadoop-2.7.7/dfs/data</value>
</property>
<property>
    <name>dfs.replication</name>
    <value>2</value>
</property>
<property>
    <name>dfs.namenode.checkpoint.dir</name>
    <value>file:/opt/SoftWare/Hadoop/hadoop-2.7.7/dfs/namesecondary</value>
</property>
<property>
    <name>dfs.namenode.secondary.http-address</name>
    <value>node02:50090</value>
</property>
<property>
    <name>dfs.webhdfs.enabled</name>
    <value>true</value>
</property>


Yarn 配置文件

[root@node01 hadoop-2.7.7]# vi etc/hadoop/yarn-site.xml
<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>
<property>
    <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
    <value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>node01</value>
</property>
<property>
    <name>yarn.nodemanager.resource.memory-mb</name>
    <value>2048</value>
</property>

​

MapReduce 配置文件

但是这个文件并不存在,先复制再打开

#使用cp命令复制一份出来,不要自己创建
[root@node01 hadoop-2.7.7]# cp etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml
[root@node01 hadoop-2.7.7]# vi etc/hadoop/mapred-site.xml
<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>
<property><!--MapReduce JobHistory Server地址-->
    <name>mapreduce.jobhistory.address</name>
    <value>node01:10020</value>
</property>
<property><!--MapReduce JobHistory Server Web界面地址-->
    <name>mapreduce.jobhistory.webapp.address</name>
    <value>node01:19888</value>
</property>
​

slaves文件

[root@node01 hadoop-2.7.7]# vim etc/hadoop/slaves
#添加以下内容:这里添加的是所有的数据节点,注意删除原来的localhost【必须配置】
node02
node03

最后如果不想配置node02和node03可以进行分发操作

[root@node01 hadoop]# scp -r /opt/SoftWare/Hadoop root@node02:/opt/SoftWare/
[root@node01 hadoop]# scp -r /opt/SoftWare/Hadoop root@node03:/opt/SoftWare/

4)设置环境变量:

[root@node01 hadoop-2.7.7]# vi /etc/profile
#添加以下内容
export HADOOP_HOME=/opt/SoftWare/Hadoop/hadoop-2.7.7
export HADOOP_LOG_DIR=$HADOOP_HOME/logs
export YARN_LOG_DIR=$HADOOP_LOG_DIR
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
#使设置立即生效
[root@node01 hadoop-2.7.7]# source /etc/profile

5)格式化Hadoop

 hdfs namenode -format

6)启动Hadoop

[root@node01 hadoop-2.7.7]# start-dfs.sh
[root@node01 hadoop-2.7.7]# start-yarn.sh
[root@node01 hadoop-2.7.7]# jps
10657 Jps
10085 NameNode
10390 ResourceManager
[root@node02 SoftWare]# jps
7668 Jps
7415 DataNode
7500 SecondaryNameNode
7567 NodeManager
[root@node03 ~]# jps
7521 NodeManager
7622 Jps
7431 DataNode

通过 http://192.168.17.126:50070 地址访问出现以下界面说明配置成功(上面是自己的ip)
在这里插入图片描述
​小编总结也不容易,如果对你有帮助请给点个赞,如果有什么问题欢迎提出,小编费尽洪荒之力也帮你解决。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值