超详细 Hadoop 2.7.4 Installation Procedure

Posted mrchis

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了超详细 Hadoop 2.7.4 Installation Procedure相关的知识,希望对你有一定的参考价值。

∑工作快两年了,一直没有个自己的技术博客啥的,感到很惭愧,每次遇到问题都是百度大神的文章,今天是周日,我也想写点我一直学习成长中遇到的问题和 解决方法,今天我就拿这个hadoop2.7.4开刀吧,至少我再这个配置上卡住了很久。拿出来给大家分享一下

-------------------------------------------------------------------------------------------------------------------------------

这次主要讲的是hadoop2.7.4的安装和一些需要的环境

hadoop2.7.4  vm12  centos 6.5  jdk1.8 

下面红色字为修改的文件和命令   蓝色字为修改的内容

*如果没有软件的可以百度一下或者直接问我要

  1.在root账户下设置hosts 

#>vim /etc/hosts

192.168.1.35 master
192.168.1.36 slave1

文件原有的东西不用动加上,上面的内容 保存退出  [ESC]  [:wq!] 

  2.设置主机名

#>vim  /etc/sysconfig/network

NETWORKING=yes
HOSTNAME=master

同上保存退出  在slave1机器上也同样设置

然后 重启所有虚拟机 

#>shutdown -r now

 

 

  3.ssh key配置

[[email protected] ~]# ssh-keygen -t rsa    然后一路回车

[[email protected] ~]# cd ~/.ssh/

[[email protected] .ssh]# cat id_rsa.pub >>authorized_keys

[[email protected] .ssh]# scp ./id_rsa.pub [email protected]:$PWD   然后输入slave1的密码就可以了,在slave1上执行下面的命令
[[email protected]~]# cd ~/.ssh/
[[email protected] .ssh]# cat id_rsa.pub >>authorized_keys  到此 ssh就配置好了master无密码访问slave1了 **slave1访问master还是 需要密码的

  4.配置hadoop2.7.4【只需要在master配置完了,复制到其他节点就可以了】

主要配置以下几个文件:

  下面所修改的文件都在一个目录下面我就不在累述了  

[[email protected] hadoop]# pwd
/opt/software/hadoop-2.7.4/etc/hadoop
[[email protected] hadoop]# vim core-site.xml

 

core-site.xml
hadoop-env.sh
hdfs-site.xml
mapred-env.sh
mapred-site.xml
slaves
yarn-env.sh
yarn-site.xml

 

上传hadoop2.7.4  jdk1.8 到linux /opt/software 目录下 不管用啥方法给他整上去就行了,opt目录下是没有software的需要你自己创建一个 mkdir -p /opt/software

然后 解压文件hadoop2.7.4   jdk1.8

 

[[email protected] software]#tar -zxvf hadoop-2.7.4.tar 
[[email protected] software]#tar -zxvf jdk***.tar

 

修改文件 


core-site.xml

[[email protected] software]# vim /opt/software/hadoop-2.7.4/etc/hadoop/core-site.xml

<configuration>
       <property>
                <name>fs.defaultFS</name>
                <value>hdfs://master:9000</value>
             <description>设定namenode的主机名及端口(建议不要更改端口号)</description>
       </property>

       <property>
               <name>hadoop.tmp.dir</name>
               <value>/opt/software/hadoop-2.7.4/tmp</value>
               <description> 存放临时文件的目录 </description>
       </property>
</configuration>

 

hadoop-env.sh 

[[email protected] software]# vim /opt/software/hadoop-2.7.4/etc/hadoop/hadoop-env.sh

 

export JAVA_HOME=/opt/software/jdk1.8.0_144    将25行的#去掉填上正确的路径

 

 

hdfs-site.xml

 [[email protected] software]# vim /opt/software/hadoop-2.7.4/etc/hadoop/hdfs-site.xml

<configuration>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/opt/software/hadoop-2.7.4/hdfs/name</value>
        <description> namenode 用来持续存放命名空间和交换日志的本地文件系统路径 </description> 
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/opt/software/hadoop-2.7.4/hdfs/data</value>
        <description> DataNode 在本地存放块文件的目录列表,用逗号分隔 </description> 
    </property>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
        <description> 设定 HDFS 存储文件的副本个数,默认为3 </description>
    </property>
</configuration>

  

 

mapred-env.sh

 [[email protected] software]# vim /opt/software/hadoop-2.7.4/etc/hadoop/mapred-env.sh

export JAVA_HOME=/opt/software/jdk1.8.0_144      将16行的java_home填写正确

 

 

mapred-site.xml
一般这个文件在2.7版本以上是没有的需要修改一下 在复制我的代码上去就可以了

[[email protected] hadoop]#cp /opt/software/hadoop-2.7.4/etc/hadoop/mapred-site.xml.template /opt/software/hadoop-2.7.4/etc/hadoop/mapred-site.xml

[[email protected] software]# vim /opt/software/hadoop-2.7.4/etc/hadoop/mapred-site.xml 

<configuration>  
    <property>
        <name>mapreduce.framwork.name</name>
        <value>yarn</value>
    </property>
     
    <property>
         <name>mapred.job.tracker</name>
         <value>master:9001</value>
    </property>
</configuration>

 

 

slaves  这个文件配置上所有节点的主机名 这里我就开了2个虚拟机 所以就2个都写上了

[[email protected] software]# vim /opt/software/hadoop-2.7.4/etc/hadoop/slaves  

master
slave1

 

 

yarn-env.sh    

 [[email protected] software]# vim /opt/software/hadoop-2.7.4/etc/hadoop/yarn-env.sh 

export JAVA_HOME=/opt/software/jdk1.8.0_144        在代码23行补全这个java_home的配置

 

 

最重要的就是下面这个文件了  我捅咕了好久才知道他出来问题,因为这个hadoop的版本升级以后yarn所需要的资源默认情况下虚拟机是满足不了的,所以你star-all.sh  也好start-yarn.sh也好nodemanager起来就掉了

yarn-site.xml

[[email protected] software]# vim /opt/software/hadoop-2.7.4/etc/hadoop/yarn-site.xml

<configuration>
        <property>
            <name>yarn.resourcemanager.hostname</name>
            <value>master</value>
            <description>如果nodemanager没有启动将下面的参数加上</description>
        </property>
       
       <property>
            <name>yarn.nodemanager.resource.memory-mb</name>
            <value>1024</value>
       </property>
       <property>
            <name>yarn.nodemanager.resource.cpu-vcores</name>
            <value>1</value>
       </property>
</configuration>

 

 

到此hadoop的配置文件已经修改好了需要创建文件夹来保存他生产出来的日志、data信息、name信息

在hadoop-2.7.4的根目录下创建 tmp hdfs/name hdfs/data 

 

[[email protected] hadoop-2.7.4]# mkdir -p hdfs/name
[[email protected] hadoop-2.7.4]# mkdir -p hdfs/data
[[email protected] hadoop-2.7.4]# mkdir tmp

 

最后剩下的就是配置环境变量啦 在文件内容最下方添加下面的代码

[[email protected] ~]# vim /etc/profile

export JAVA_HOME=/opt/software/jdk1.8.0_144
export HADOOP_HOME=/opt/software/hadoop-2.7.4
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

记住记住 

[[email protected] ~]# source /etc/profile

[[email protected] ~]# scp -r /opt/software/hadoop-2.7.4 [email protected]:/opt/software/                 在slave1上也要建立software文件夹 也需要将环境变量配置好同上也好source

[[email protected] ~]# scp -r /opt/software/jdk1.8.0_144 [email protected]:/opt/software/       在slave1上也要建立software文件夹 也需要将环境变量配置好同上也好source

  5.格式化集群

[[email protected] ~]# hdfs namenode -format

如果报错了,看日志,就在创建的文件夹下,新手最好不要手打配置文件,但是手打配置文件是好习惯 往往会提示 你的标签没有关闭 或者是标签错误

  6.启动集群

[[email protected] ~]# start-all.sh

这是一个组合命令,start-dfs.sh and start-yarn.sh

单独启动hdfs =>>  start-dfs.sh 

单独启动yarn =>>  start-yarn.sh

  7.1 查看进程并验证

[[email protected]master software]# jps

17315 Jps
12854 SecondaryNameNode
12535 NameNode
13592 RunJar
13161 NodeManager
13037 ResourceManager
12671 DataNode

[[email protected]slave1 ~]# jps
6336 DataNode
6452 NodeManager
6716 Jps

  7.2 hdfs的web界面验证  地址栏里输入:master:50070

技术分享图片

继续往下找会看到活跃的节点和dead的节点数

技术分享图片

下面的是yarn的web地址 master:8088

技术分享图片

 

这里还没算完事 只是看到了jps进程和web界面都是正常的 还需要运行一下hadoop自带是一个事例jar 

[[email protected] software]# cd /opt/software/hadoop-2.7.4/share/hadoop/mapreduce/
[email protected] mapreduce]# hadoop jar ./hadoop-mapreduce-examples-2.7.4.jar pi 10 10

技术分享图片

如果说正确的走到了这里那么才算彻底的完成了hadoop2.7.4的安装,恭喜您啦














以上是关于超详细 Hadoop 2.7.4 Installation Procedure的主要内容,如果未能解决你的问题,请参考以下文章

搭建Hadoop集群(超详细版)

超详细的Hadoop2配置详解

centos安装配置hadoop超详细过程(含故障排除)

Hadoop 3.1.3 分布式集群搭建,超详细,保姆级教程

centos安装配置hadoop超详细过程(含故障排除)

超详细从零记录Hadoop2.7.3完全分布式集群部署过程