CentOS 搭建hadoop2.7.2

一、本次hadoop集群搭建是在四台linux主机上搭建。分别是

  192.168.226.17        Master 

  192.168.226.18        Slave1

  192.168.226.19        Slave2

  192.168.226.20        Slave3

 

二、准备工作,首先在四台linux主机上建立hadood运行帐号

        groupadd hadoop 

        useradd -s /bin/bash-d /home/hadoop -m hadoop -g hadoop 

        passwd hadoop

这里解释一下3条命令的含义:

    (1) 建立一个hadoop的组

(2) 添加一个hadoop的用户,并且在home下面创建hadoop的用户目录,并添加到hadoop组里

(3) hadoop设置密码

 

三、配置ssh免密码

    (1) ssh-keygen-t rsa    生成key,都不输入密码,一直回车,/root就会生成.ssh文件夹,每台服务器都要执行该命令。

    (2) cd .ssh       进入生成的.ssh文件夹,该文件夹下会有id_rsaid_rsa.pub两个文件。

    (3) cpid_rsa.pub authorized_keys 

    (4) scp authorized_keyshadoop@192.168.226.18:/home/had

oop/.ssh         然后将authorized_keys拷贝到其他主机上。

    (5) catid_rsa.pub >> authorized_keys  将公钥添加到authorized_keys中,然后重复第五步,最终添加所有主机上的公钥即可实现免密。

 注意: 当按照以上步骤免密不成功。是因为未将秘钥添加成功, 执行 :ssh-add ~/.ssh/id_rsa                

 

四、安装jdk

   hadoop安装可使用jdk1.7

   (1) 下载“jdk-7u79-linux-x64.gz”,放到/home/java目录下
   (2)
解压,输入命令,tar -zxvf jdk-7u79-linux-x64.gz
   (3)
编辑/etc/profile
export JAVA_HOME=/home/java/jdk1.7.0_79

exportCLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME

/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin 

  (4) 使配置生效,输入命令,source /etc/profile
  (5)
输入命令,java -version,完成

五、安装Hadoop2.7.2,只在Master服务器解压

  (1) 下载“hadoop-2.7.2.tar.gz”,放到/home/hadoop目录下
  (2)
解压,输入命令,tar -xzvf hadoop-2.7.2.tar.gz
  (3)
在/home/hadoop目录下创建数据存放的文件夹,tmp、hdfs、hdfs/data、hdfs/name

六、配置hadoop相关文件属性

    (1) 配置/home/hadoop/hadoop-2.7.2/etc/hadoop下的core-site.xml  ,  内容如下:

 <configuration>
    <property>

       <name>fs.defaultFS</name>
       <value>hdfs://192.168.226.17:9000</value>
    </property>
    <property>
       <name>hadoop.tmp.dir</name>
       <value>file:/home/hadoop/tmp</value>
    </property>
    <property>
       <name>io.file.buffer.size</name>
       <value>131702</value>
    </property>
</configuration>

 

    (2) 配置/home/hadoop/hadoop-2.7.2/etc/hadoop下的hdfs-site.xml , 内容如下:

<configuration>
    <property>

       <name>dfs.namenode.name.dir</name>
       <value>file:/home/hadoop/hdfs/name</value>
    </property>
    <property>
       <name>dfs.datanode.data.dir</name>
       <value>file:/home/hadoop/hdfs/data</value>
    </property>
    <property>
       <name>dfs.replication</name>
       <value>2</value>
    </property>
    <property>
       <name>dfs.namenode.secondary.http-address</name>
       <value>192.168.226.17:9001</value>
    </property>
    <property>
    <name>dfs.webhdfs.enabled</name>
   <value>true</value>
    </property>
</configuration>

 

    (3) 配置/home/hadoop/hadoop-2.7.2/etc/hadoop下的mapred-site.xml (如果这个文件不存在,就将mapred-site.xml.template拷贝重命名为mapred-site.xml) , 内容如下:

<configuration>
    <property>

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

 

   (4)  配置/home/hadoop/hadoop-2.7.2/etc/hadoop下的yarn-site.xml  , 内容如下:

<configuration>
    <property>

       <name>yarn.nodemanager.aux-services</name>
       <value>mapreduce_shuffle</value>
    </property>
    <property>
       <name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
       <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>
    <property>
        <name>yarn.resourcemanager.address</name>
       <value>192.168.226.17:8032</value>
    </property>
    <property>
       <name>yarn.resourcemanager.scheduler.address</name>
       <value>192.168.226.17:8030</value>
    </property>
    <property>
       <name>yarn.resourcemanager.resource-tracker.address</name>
       <value>192.168.226.17:8031</value>
    </property>
    <property>
       <name>yarn.resourcemanager.admin.address</name>
       <value>192.168.226.17:8033</value>
    </property>
    <property>
       <name>yarn.resourcemanager.webapp.address</name>
       <value>192.168.226.17:8088</value>
    </property>
</configuration>

 

     (7) 配置/home/hadoop/hadoop-2.7.2/etc/hadoop下的hadoop-env.sh   yarn-env.sh中的JAVA_HOME, 否者启动会可能缺失jdk导致启动失败。   内容如下:

export JAVA_HOME=/home/java/jdk1.7.0_79

 

     (8) 配置/home/hadoop/hadoop-2.7.2/etc/hadoop下的slaves , 删除文件中已有的 localhost, 增加节点, 内容如下:

192.168.226.18

192.168.226.19

192.168.226.20

七、上面工作做完之后,在master上已经将hadoop配置完毕。然后将hadoop-2.7.2文件夹发到各个节点上,命令如下:

scp -r /home/hadoop/hadoop-2.7.2hadoop@192.168.226.18:

/home/hadoop/

scp -r /home/hadoop/hadoop-2.7.2hadoop@192.168.226.19:

/home/hadoop/

scp -r /home/hadoop/hadoop-2.7.2hadoop@192.168.226.20:

/home/hadoop/

 

注意:发送完毕之后,注意查看各节点中是否存在hadoop-2.7.2

 

八、在master服务器启动hadoop,从节点会自动启动,进入/home/hadoop/hadoop-2.7.2 做以下操作:

     (1) 格式化(格式化)HDFS,输入命令:/bin/hdfs namenode -format

     (2) 启动hadoop集群:sbin/start-all.sh

     (3) 启动完毕之后查看进程是否如下:

master中执行jps命令:

slave1 中执行jps命令:

slave2 中执行jps命令:

slave3 中执行jps命令:

 

注意:当需要hadoop集群关闭时执行如下指令:

    sbin/stop-all.sh

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值