ITPub博客

首页 > 大数据 > Hadoop > hadoop单机版快速安装指南,不容错过

hadoop单机版快速安装指南,不容错过

Hadoop 作者:bx_wxwk 时间:2013-08-04 16:41:58 0 删除 编辑

单机版hadoop平台搭建过程说明

一、引言

单机版的hadoop平台搭建指的是在单机上部署hadoop环境,以调试mapReduce程序。

本文的环境搭建是针对双系统(windowslinux)或者单linux系统的,而非windows下的linux虚拟机。并且,本文hadoop部署之前下载了如下的程序:ubuntu 10.10hadoop 0.21.0jdk1.6.0_37 for linux。这些程序均可以从网上下载,其中jdk1.6.0_37 for linux是直接从官网上下载。

二、部署过程说明

参考网上相关资源,本文所采取的部署过程分为三个阶段:程序安装阶段、程序配置阶段、和运行测试阶段。程序安装阶段主要是按照ubuntujdkhadoop三个程序;程序配置阶段主要是配置相关环境变量、ssh key和对hadoop的配置;运行测试阶段主要是对搭建的环境运用hadoop自带的wordcount程序来测试hadoop环境搭建是否成功。

各个阶段的详细操作步骤如下。

2.1、程序安装阶段

2.1.1、安装ubuntu10.10

ubuntu的安装按照提示来就行,此处不做说明。

2.1.2、安装jdk

第一步:在usr下面新建一个文件夹Java, 然后将jdk复制过来

       sudo mkdir /usr/Java
           sudo cp jdk
的路径 /usr/Java
    
第二步:进入到Java目录下,改变文件权限为可执行
            cd /usr/Java
            sudo  chmod  u+x  jdk1.6.0_37.bin
     
第三步:安装
            sudo ./jdk1.6.0_23.bin
           (
现象为Unpacking....加一连串解压信息)

2.1.3、安装hadoop0.21.0

      第一步:将hadoop0.21.0.tar.gz复制到usrlocal目录下

         sudo cp hadoop的路径 /usr/local
:从网上下载的hadoop往往是压缩成rar的,这里需要现在本地解压,然后提取出来的文件里面就会出现hadoop0.21.0.tar.gz

       第二步:进入到local目录下,解压hadoop0.21.0.tar.gz
            cd /usr/local
             sudo tar -xzf hadoop0.21.0.tar.gz
       
第三步:为了方便管理,将解压后的文件夹名改为hadoop
             sudo mv hadoop0.21.0 hadoop
       
第四步:创建一个名为hadoop的用户和用户组
            1
、创建一个名为hadoop的用户组
              sudo addgroup hadoop
            2
、创建一个名为hadoop的用户,归到hadoop用户组
              sudo adduser --ingroup hadoop hadoop
   
注:创建用户名需要输入用户的密码,本人测试用户的密码可以设置。在设置完密码之后,还需要输入用户的一些信息,可以不填,都敲回车,用系统默认的即可。

            3、用gedit打开etc下的sudoers文件

              sudo gedit /etc/sudoers
            4
、在 root   ALL=(ALL)  ALL 下面添加如下一行

hadoop  ALL=(ALL)  ALL

注:添加 hadoop  ALL=(ALL)  ALL 的意义在于能让hadoop用户使用“sudo”命令

2.2、程序配置阶段

2.2.1、配置环境变量

     第一步:用gedit打开etc下的profile文件

         sudo gedit /etc/profile
     
第二步:在文件最后加入如下几行

export CLASSPATH=.:/usr/Java/jdk1.6.0_37/lib:/usr/Java/jdk1.6.0_37/jre/lib:$CLASSPATH

export PATH=.:/usr/Java/jdk1.6.0_37/bin:/usr/Java/jdk1.6.0_37/jre/bin:/usr/local/hadoop/bin:$PATH

 

注:如果采用的是不同版本的jdk,这里要注意修改jdk的名称

       第三步:保存后关闭gedit,并重启机器
           sudo reboot
      
第四步:重启后用hadoop用户登录,验证配置是否成功
           java -version 

注:1)此处注意要是以hadoop用户登录系统,后续的所有部署过程都是在hadoop用户名下,

2)此语句执行后如显示了jdk版本的话说明配置成功,如果没有则需检查profile中路径是否正确

2.2.2、创建ssh-key

    第一步:确保网络通畅,然后装载ssh服务

        sudo apt-get install openssh-server
   
注:如果此语句执行失败且结果为“....没有可利用的包”的话,可以先执行 sudo apt-get update,以更新各个链接。执行此句要花较长时间,并且一直显示下载数据。

第二步:创建ssh-key

ls  -la   /home/hadoop

sudo  chmod   777   /home/hadoop/.ssh   -R

sudo   chown  hadoop:hadoop  /home/hadoop/.ssh  -R

ls  -la   /home/hadoop

ssh-keygen -t rsa -P

ssh-keygen -t rsa

  ssh-keygen -t rsa --P
     
注:此语句执行后会要你填写key的保存位置,直接照着系统给出的那个默认位置填,也就是括号里的那个路径,如果全都照此文档操作的话那么括号中路径应该为"/home/hadoop/.ssh/id_rsa"
   
第三步:将此ssh-key添加到信任列表中,并启用此ssh-key

     cat /home/hadoop/.ssh/id_rsa.pub >> /home/hadoop/.ssh/authorized_keys

    第四步:启动ssh服务

sudo service ssh start

2.2.3、配置hadoop

第一步:配置conf目录下的hadoop-env.sh中的JAVA_HOME

cd /usr/local/hadoop
sudo gedit conf/hadoop-env.sh

注:打开后在文档的上部某行有“#export JAVA_HOME=...”字样的地方,去掉“#”,然后在等号后面填写你的jdk路径,完全按此文档来的话应改为 "export JAVA_HOME=/usr/Java/jdk1.6.0_37"

第二步:配置conf目录下的core-site.xml

       sudo gedit conf/core-site.xml
注:打开后标签 中是空的,所以在空的地方加入如下配置
       
           fs.default.name   
           hdfs://localhost:9000    
       
       
           dfs.replication   
           1    
       
        
           hadoop.tmp.dir   
           /home/hadoop/tmp    
       
    第三步:配置conf目录下的mapred-site.xml

       sudo gedit conf/mapred-site.xml
    
注:打开后标签 中也是空的,添加如下配置

      
          mapred.job.tracker  
          localhost:9001 
    

2.3、运行测试阶段

2.3.1、格式化namenode (首次运行必需)

     第一步:进入/usr/local/hadoop目录
        cd /usr/local/hadoop
    
第二步:格式化namenode
        hadoop namenode
format

2.3.2、启动hadoop

     第一步:修改hadoop文件夹的权限,保证hadoop用户能正常访问其中的文件
        sudo chown
hR  hadoop /usr/local/hadoop
    
第二步:启动hadoop

         bin/start-all.sh
    
第三步:验证hadoop是否正常启动
          jps
   
注:此语句执行后会列出已启动的东西NameNode,JobTracker,SecondaryNameNode...如果NameNode没有成功启动的话就要先执行"bin/stop-all.sh"停掉所有东西,然后重新格式化namenode,再启动

2.3.3、测试wordcount程序

    第一步:准备跑wordcount程序需要的测试数据文件

        sudo gedit /tmp/input1.txt
注:打开后随便输入一些内容,如"hello hadoop",然后保存退出。这里可以利用该命令创建多个input文件,然后利用下面的命令都提交到dfs上去。

    第二步:将生成的测试数据文件上传到dfs文件系统中的input目录

      hadoop fs -mkdir input(即在目录/usr/hadoop下创建目录input

      hadoop fs put  /tmp/input1.txt input

注:1,此处两行命令也可以改为:hadoop dfs -copyFromLocal /tmp/input1.txt  input

    2,此处可以利用如下hadoop命令来查看是否上传成功

hadoop命令 hadoop dfs ls  input

     第三步:执行wordcount

bin/hadoop jar hadoop-mapred-examples-0.21.0.jar wordcount input output

 

注:1, 此语句意为“对input目录下的所有文件执行wordcount,将统计结果输出到output目录中”,若output文件夹不存在则会自动创建一个

2,此句执行时,当前的目录应该是usr/local/hadoop

3,如果执行之后显示文件已经存在异常,则需要删除output目录,删除命令是:hadoop fs rm output

4,此处要注意自己下载的hadoop版本中wordcount例子的全名,该文件在/usr/local/hadoop/bin 名称不对会显示找不到文件的异常

第四步:查看结果
      hadoop dfs -cat output/part-r-00000
   
注:结果文件默认是输出到一个名为“part-r-00000”的文件中的,可用指令“hadoop dfs -ls output”查看output目录下除了part-r-0000文件外,还有一个success的日志文件

三、参考资源

1、              hadoop实战》

2、              http://www.iteye.com/topic/891693

 

<!-- 正文结束 -->

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26109228/viewspace-1119591/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2011-10-10