hadoop2.2.0分布模式安装教程

一:软件准备
     1、操作系统:centOS6.5  64位
    
     2、hadoop2.2.0安装包
                    下载地址: http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.2.0/
            注意:由于我使用的操作系统是64位的,hadoop官网上编译好的安装包只有32位的,所以需要自己下载源码包使用maven编译成64位的安装包,如果直接将官网下载的32位的hadoop运行在64位的机器上,格式化以及启动hdfs时会报  WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable   错误。本教程略过了hadoop2.2.0的编译过程,可自行百度^^。

     3、JDK安装包
              下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
              由于hadoop是使用java语言开发的,所以需要运行在java环境中。我使用的jdk安装包是:jdk-7u45-linux-x64.rpm
              


二:集群架构
    由于搭建的只是实验环境,不是生产环境,所以使用一台服务器,虚拟出3台虚拟机,一台作为master(sjfx),两台作为slave(sjfx01、sjfx02)。
   IP                          hostname
   192.168.57.127     sjfx
   192.168.57.128     sjfx01 
    192.168.57.129     sjfx02  

三:系统环境准备
    略去系统安装以及ip配置
     1、修改主机名
            命令:vi /etc/sysconfig/network
            对照集群架构,修改对应的主机名
            
            注:另外两台机子的配置同理。

     2、修改hosts配置
            命令:vi /etc/hosts
            对应集群架构,将ip与主机名进行绑定,修改完成后,可以通过ping命令验证                    
              
            注:可以直接将配置好的hosts文件发送给另外两台机器,因为配置的内容是一样的,命令如下:
            scp /etc/hosts root@sjfx01:/etc/hosts         
            scp /etc/hosts root@sjfx02:/etc/hosts

     3、关闭防火墙
            命令:service iptables stop
      
     4、关闭防火墙自启动
            命令:chkconfig iptables off
            验证:chkconfig --list | grep iptables
            
            注:另外两台机器3、4步做同样操作。

     5、配置ssh免密码登录
            a、生成的密码会存放在~/.ssh目录下,进入到该目录 cd ~/.ssh/
            输入命令:ssh-keygen -t rsa   一路回车,会生成两个文件
            

            b、复制公钥的内容 cp id_rsa.pub authorized_keys 
            
            验证是否成功:ssh localhost

            c、将公钥信息分发给集群中的其他机器,从而保证免密码登录:
                    命令:ssh-copy-id  -i  ~/.ssh/id_rsa.pub  sjfx01
                                 ssh-copy-id  -i  ~/.ssh/id_rsa.pub  sjfx02
             注:另外两台机器做类似操作。由于hadoop进程间的通信采用ssh方式,配置免密码登录可以避免每次都要输入密码。

四:JDK安装
             1、从上面提供的网址下载jdk的安装包,因为我的系统是linux 64位的,所以要下载linux 64位的jdk版本。
            
             2、由于我下载的是rpm格式的安装包,所以使用命令:rpm -ivh jdk-7u45-linux-x64.rpm 进行安装。
            
             3、jdk安装完成后配置环境变量:
            命令:vi /etc/profile
            添加两行内容:
            export JAVA_HOME=/usr/java/jdk1.7.0_45
            export PATH=.:$JAVA_HOME/bin:$PATH
            
            保存退出后,执行命令:source /etc/profile   让刚才的修改立即生效。
            
             4、执行命令:java -version  查看jdk是否安装成功。
            

            注:另外两台机子按照相同方式安装jdk

五:hadoop2.2.0安装
             1、使用maven编译hadoop-2.2.0-src,编译好的hadoop2.2.0会放在hadoop-2.2.0-src/hadoop-dist/target目录下,将hadoop2.2.0文件夹复制到你要安装的位置即可(我放在了/home目录下)。
            

             2、配置环境变量
            hadoop的环境变量配置跟jdk的环境变量配置类似
            命令:vi /etc/profile
            增加下面几行内容(根据自己的安装目录,做适当修改):
                    export HADOOP_DEV_HOME=/home/hadoop
                    export PATH=$PATH:$HADOOP_DEV_HOME/bin
                    export PATH=$PATH:$HADOOP_DEV_HOME/sbin
                    export HADOOP_MAPARED_HOME=${HADOOP_DEV_HOME}
                    export HADOOP_COMMON_HOME=${HADOOP_DEV_HOME}
                    export HADOOP_HDFS_HOME=${HADOOP_DEV_HOME}
                    export YARN_HOME=${HADOOP_DEV_HOME}
                    export HADOOP_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
                    export HDFS_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
                    export YARN_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
              

             3、修改配置文件,hadoop2.2.0的配置文件在 ${HADOOP_HOME}/etc/hadoop/  目录下
            
            主要修改:hadoop-env.sh 、 yarn-env.sh、slaves、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml
            
             a、在hadoop-env.sh文件中第27行修改java的home目录
            
           
              b、在yarn-env.sh文件中第27行修改java的home目录
            
            
             c、在slaves文件中添加slave node            
            
            
             d、修改core-site.xml文件,添加如下配置(根据自己的实际情况进行修改):
            <property>
                    <name>hadoop.tmp.dir</name>
                    <value>/hadoop/tmp</value>
                    <description>A base for other temporary directories.</description>
            </property>
            <property>
                    <name>fs.default.name</name>
                    <value>hdfs://sjfx:9000</value>
             </property>
            <property>
                    <name>hadoop.proxyuser.root.hosts</name>
                    <value>sjfx</value>
            </property>
            <property>
                    <name>hadoop.proxyuser.root.groups</name>
                    <value>*</value>
            </property>
        
             e、修改hdfs-site.xml文件,添加如下配置(根据自己的实际情况进行修改):
            <property>
                    <name>dfs.replication</name>
                    <value>3</value>
            </property>
            <property>
                    <name>dfs.namenode.name.dir</name>
                    <value>/hadoop/hdfs/name</value>
                    <final>true</final>
            </property>
            <property>
                    <name>dfs.federation.nameservice.id</name>
                    <value>ns1</value>
            </property>
            <property>
                    <name>dfs.namenode.backup.address.ns1</name>
                    <value>sjfx:50100</value>
            </property>
            <property>
                    <name>dfs.namenode.backup.http-address.ns1</name>
                    <value>sjfx:50105</value>
             </property>
            <property>
                    <name>dfs.federation.nameservices</name>
                    <value>ns1</value>
            </property>
            <property>
                    <name>dfs.namenode.rpc-address.ns1</name>
                    <value>sjfx:9000</value>
            </property>
            <property>
                    <name>dfs.namenode.rpc-address.ns2</name>
                    <value>sjfx:19000</value>
            </property>
            <property>
                    <name>dfs.namenode.http-address.ns1</name>
                    <value>sjfx:23001</value>
            </property>
            <property>
                    <name>dfs.namenode.http-address.ns2</name>
                    <value>sjfx:13001</value>
            </property>
            <property>
                    <name>dfs.dataname.data.dir</name>
                    <value>/hadoop/hdfs/data</value>
                    <final>true</final>
            </property>
            <property>
                    <name>dfs.namenode.secondary.http-address.ns1</name>
                    <value>sjfx:23002</value>
            </property>

             f、修改mapred-site.xml文件,添加如下配置(根据自己的实际情况进行修改):
            注:默认没有mapred-site.xml文件,只有mapred-site.xml.template文件
                    通过命令:cp mapred-site.xml.template mapred-site.xml  复制mapred-site.xml.template,然后再修改mapred-site.xml
            <property>
         <name>mapreduce.framework.name</name>
                <value>yarn</value>
    </property>        
    <property>  
        <name>mapreduce.jobhistory.address</name>  
        <value>sjfx:10020</value>  
    </property> 

                g、修改yarn-site.xml文件,添加如下配置(根据自己的实际情况进行修改):
            <property>
                    <name>yarn.resourcemanager.address</name>
                    <value>sjfx:18040</value>
            </property>
            <property>
                    <name>yarn.resourcemanager.scheduler.address</name>
                    <value>sjfx:18030</value>
            </property>
            <property>
                    <name>yarn.resourcemanager.webapp.address</name>
                    <value>sjfx:18088</value>
            </property>
            <property>
                    <name>yarn.resourcemanager.resource-tracker.address</name>
                    <value>sjfx:18025</value>
            </property>
            <property>
                        <name>yarn.resourcemanager.admin.address</name>
                        <value>sjfx:18141</value>
            </property>
            <property>
                    <name>yarn.nodemanager.aux-services</name>
                    <value>mapreduce_shuffle</value>
            </property>

            注:另外两台机子做同样的配置,可以直接通过scp命令将配置好的hadoop安装包以及环境变量发送给另外两台机子。

             4、所有机器的hadoop都配置好后,在namenode上执行命令格式化hdfs
            命令:hadoop namenode -format
            (会有一大段输出,自己检查下是否一切正常)
            
             5、启动hadoop集群
                  启动hdfs命令:start-dfs.sh
                  启动yarn命令:start-yarn.sh
                  启动historyserver命令:mr-jobhistory-daemon.sh start historyserver
    
                    
                    sjfx01:
                    
                    sjfx02:
                    

总结:
hadoop2.2.0的安装主要注意以下几点:
1、机器环境的配置,检查防火墙是否关闭,配置ssh免密码登录
2、安装jdk
3、安装hadoop,注意hadoop的配置,要熟悉hadoop的配置文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

成汐

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

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

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

打赏作者

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

抵扣说明:

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

余额充值