centos7搭建hadoop集群(超详细)

centos7搭建hadoop集群(超详细)

前提:

第一部分:

1.centos7安装虚拟机的文章链接: https://www.runoob.com/w3cnote/vmware-install-centos7.html.

2.需要三台及以上虚拟机,并保证能通网
centos7搭建hadoop集群(超详细)
3.三台都需要ping网试一下
centos7搭建hadoop集群(超详细)
4.在三台机器的/etc/hosts中添加ip和名称(三台机器都需要)
centos7搭建hadoop集群(超详细)

第二部分:给三台虚拟机配置ssh密钥

1.1:生成文件,红色箭头处需要敲一次空格
centos7搭建hadoop集群(超详细)
1.2:查看生成的文件
centos7搭建hadoop集群(超详细)
三台机器都需要操作1.1 1.2两步

2.1:创建authorized_keys 文件**(三台机器都需要)**

centos7搭建hadoop集群(超详细)
2.2:将三台虚拟机的id_rsa.pub内容全部保存至mater的authorized_keys文件内
centos7搭建hadoop集群(超详细)
三台虚拟机中都需要

3.1:测试ssh
centos7搭建hadoop集群(超详细)
建议ssh测试完后exit退出,不然操作就是在ssh后的虚拟机上操作的
centos7搭建hadoop集群(超详细)

正文:安装Hadoop

1.将hadoop下载好的包传入到虚拟机并解压(三台机器都需要做

centos7搭建hadoop集群(超详细)

2.进入hadoop解压后的文件中/etc/hadoop/下centos7搭建hadoop集群(超详细)

修改hadoop的四个配置文件:core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml

core-site.xml如下:

<property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000/</value>
    </property>
    <property>
        <name>hadoop.proxyuser.root.hosts</name>
        <value>*</value>
    </property>
    <property>
        <name>hadoop.proxyuser.root.groups</name>
        <value>*</value>
    </property>
<property>
        <name>hadoop.tmp.dir</name>
        <value>file:///usr/soft/hadoop-2.7.5/tmp/</value>
</property>
<property>
        <name>fs.trash.interval</name>
        <value>1440</value>
        <description>Number of minutes between trash checkpoints.
            If zero, the trash feature is disabled.
        </description>
    </property>

hdfs-site.xml如下

 <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:///usr/soft/hadoop-2.7.5/etc/hadoop/dfs/name</value>
        <description>NameNode directory for namespace and transaction logs storage.</description>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:///usr/soft/hadoop-2.7.5/etc/hadoop/dfs/data</value>
        <description>DataNode directory</description>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>

mapred-site.xml如下:

<property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>master:10020</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>master:19888</value>
    </property>

yarn-site.xml如下:

<property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>master</value>
    </property>
    <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
    </property>

完成后需要在usr/soft/hadoop-2.7.5/etc/hadoop文件下创建文件如下

centos7搭建hadoop集群(超详细)

centos7搭建hadoop集群(超详细)

修改slaves文件

centos7搭建hadoop集群(超详细)

启动hadoop

进入hadoop/bin目录下执行

./hadoop namenode -format 

centos7搭建hadoop集群(超详细)

执行成功页面

centos7搭建hadoop集群(超详细)

启动hadoop

进入hadoop包下的sbin目录下执行:./start-all.sh

centos7搭建hadoop集群(超详细)

我在执行时遇到错误,这错误也很简单,在slava1,slave2的hadoop-daemon.sh脚本没有权限,我们去到slava1,slave2给他赋予权限。

centos7搭建hadoop集群(超详细)
centos7搭建hadoop集群(超详细)

并且把hadoop包下的bin 文件夹也赋予权限不然也会报错,三台机器都需要

centos7搭建hadoop集群(超详细)

之后重新启动

centos7搭建hadoop集群(超详细)
在master机器jps可以看到这几个进程
centos7搭建hadoop集群(超详细)
在slave1和slave2机器jps可以看到这几个进程
centos7搭建hadoop集群(超详细)
centos7搭建hadoop集群(超详细)

关闭防火墙

centos7搭建hadoop集群(超详细)

并且进入网页192.168.2.10:9000可以看到hadoop页面

centos7搭建hadoop集群(超详细)

这样你的hadoop就搭建成功了!

后面再搭建过程中有问题的可以留言或者私信我帮你解决。

上一篇:静态网站(博客)生成器Static Site Generators(SSGs)大集合


下一篇:在Visual Studio 2013/2015上使用C#开发Android/IOS安装包和操作步骤