Centos7安装Hadoop2.8步骤

第一步,准备3台机器或虚拟机,分别作为hadoop安装集群的master和2个slave。

        3台机器安装好JDK,并配置好JAVA_HOME(请参考《Centos7安装Oracle JDK》)。然后在3台机器之间建立信任关系(请参考《在两台Centos服务器之间建立信任关系》)。

        然后,在3台机器上分别执行hostname aeolus-vm0,hostname aeolus-vm1,hostname aeolus-vm2命令,为3台机器命名。具体的名称大家可以根据习惯配置。

        然后在3台机器上执行vi /etc/hosts配置hosts,可以互相通过hostname进行访问。其中的ip地址根据实际情况配置。

192.168.8.60 aeolus-vm0
192.168.8.59 aeolus-vm1
192.168.8.58 aeolus-vm2
        这样就完成了初步的服务器基础配置工作。下面就可以安装hadoop了。


第二步,登录Apache Hadoop网站,下载Hadoop2.8的安装包。这里下载压缩包即可。


        然后将安装包上传到3台机器。解压缩后,将解压出来的hadoop目录拷贝到/opt/hadoop目录下。即/opt/hadoop作为hadoop的安装目录。


第三步,配置hadoop。

        编辑/opt/hadoop/etc/hadoop/core-site.xml,在<configuration>节点中增加如下内容:

   <property>

        <name>hadoop.tmp.dir</name>

        <value>/root/hadoop/tmp</value>

        <description>Abase for other temporary directories.</description>

   </property>

   <property>

        <name>fs.default.name</name>

        <value>hdfs://aeolus-vm0:9000</value>

   </property>

        编辑/opt/hadoop/etc/hadoop/hadoop-env.sh,将export JAVA_HOME=${JAVA_HOME}中的${JAVA_HOME}改成jdk安装路径。即使安装JAVA时已经配置过JAVA_HOME系统变量,该步骤也是必须的。

        编辑/opt/hadoop/etc/hadoop/hdfs-site.xml,在<configuration>节点中增加如下内容:

    <property>
        <name>dfs.name.dir</name>
        <value>/root/hadoop/dfs/name</value>
        <description>Path on the local filesystem where theNameNode stores the namespace and transactions logs persistently.</description>
    </property>
    <property>
        <name>dfs.data.dir</name>
        <value>/root/hadoop/dfs/data</value>
        <description>Comma separated list of paths on the localfilesystem of a DataNode where it should store its blocks.</description>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
    <property>
        <name>dfs.permissions</name>
        <value>false</value>
        <description>need not permissions</description>
    </property>
        注意:dfs.permissions如果配置成true,则对dfs上的文件进行读写时,就需要检查权限。会更安全。如果该参数不配,则默认为校验权限。


        执行cp /opt/hadoop/etc/hadoop/mapred-site.xml.template /opt/hadoop/etc/hadoop/mapred-site.xml,将系统提供的mapred-site.xml.template拷贝生成mapred-site.xml,然后编辑该xml,在<configuration>节点中增加如下内容。

    <property>
        <name>mapred.job.tracker</name>
        <value>aeolus-vm0:49001</value>
    </property>
    <property>
        <name>mapred.local.dir</name>
        <value>/root/hadoop/var</value>
    </property>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>

        编辑/opt/hadoop/etc/hadoop/slaves文件,删除缺省的localhost,将两个slave机器的hostname添加到其中。

aeolus-vm1
aeolus-vm2

        编辑/opt/hadoop/etc/hadoop/yarn-site.xml文件,在<configuration>节点上增加如下内容。

    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>aeolus-vm0</value>
    </property>
    <property>
        <description>The address of the applications manager interface in the RM.</description>
        <name>yarn.resourcemanager.address</name>
        <value>${yarn.resourcemanager.hostname}:8032</value>
    </property>
    <property>
        <description>The address of the scheduler interface.</description>
        <name>yarn.resourcemanager.scheduler.address</name>
        <value>${yarn.resourcemanager.hostname}:8030</value>
    </property>
    <property>
        <description>The http address of the RM web application.</description>
        <name>yarn.resourcemanager.webapp.address</name>
        <value>${yarn.resourcemanager.hostname}:8088</value>
    </property>
    <property>
        <description>The https adddress of the RM web application.</description>
        <name>yarn.resourcemanager.webapp.https.address</name>
        <value>${yarn.resourcemanager.hostname}:8090</value>
    </property>
    <property>
        <name>yarn.resourcemanager.resource-tracker.address</name>
        <value>${yarn.resourcemanager.hostname}:8031</value>
    </property>
    <property>
        <description>The address of the RM admin interface.</description>
        <name>yarn.resourcemanager.admin.address</name>
        <value>${yarn.resourcemanager.hostname}:8033</value>
    </property>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.scheduler.maximum-allocation-mb</name>
        <value>1024</value>
        <discription>每个节点可用内存,单位MB,默认8182MB</discription>
    </property>
    <property>
        <name>yarn.nodemanager.vmem-pmem-ratio</name>
        <value>2.1</value>
    </property>
    <property>
        <name>yarn.nodemanager.resource.memory-mb</name>
        <value>1024</value>
    </property>
    <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
    </property>
         说明:yarn.nodemanager.vmem-check-enabled这个的意思是忽略虚拟内存的检查,如果你是安装在虚拟机上,这个配置很有用,配上去之后后续操作不容易出问题。如果是实体机上,并且内存够多,可以将这个配置去掉。

第四步,启动hadoop

        根据上面的配置,我们将aeolus-vm0配置成了master,即namenode。那么只需要在该节点启动即可。

        进入/opt/hadoop/bin,执行./hadoop namenode -format命令初始化该节点。


执行过程不报错,正常状态如下:


        此时,/root/hadoop/dfs/name/current/目录下会多出如下几个文件:



        在3台机器上重复第三步的所有操作,执行完成全部3台机器的初始化后,即可在namenode上启动hadoop。

        在/opt/hadoop/sbin下,执行./start-all.sh,启动hadoop。如果启动过程和下图一致,则表示正常。


        此时,找另外一台机器,输入namenode的地址和50070端口,如果出现下面的界面,则表示启动正常。


        输入namenode的ip+8088端口,会出现claster管理页面,如下图。



        到此,安装结束。

        最后,如果要访问slave的8042端口,查看slave机器状态,则需要执行systemctl   stop   firewalld.service命令,关闭slave机器上的防火墙。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郑再鹏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值