ubuntu12.04下hadoop-0.20.1伪模式安装

来源:互联网 发布:买mac还是ipad 编辑:程序博客网 时间:2024/05/29 03:22
时间:2014-1-14
记录人:zqw_BigData

一、安装jdk
    1、官网下载jdk
jdk1.7.0_45(版本任选),解压,进入解压目录
 
    $ sudo mv jdk1.7.0_10 /usr/lib/jvm
 

  2、
接下来需要设置环境变量,进入当前用户名的主文件夹(cd /home/zhao),修改.profile文件。注意,该文件是当前用户的配置文件,如果要对使用计算机的所有用户生效,那么需要设置的文件应该是 /etc/profile。
 
    $ sudo gedit ~/.profile/
    在末尾加上
  1.   export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_45
  2.   export JRE_HOME=/usr/lib/jvm/jdk1.7.0_45/jre 
  3.   export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
  4.   export PATH=$JAVA_HOME/bin:$PATH
  5.  然后保存关闭,此时在命令行输入java -version将会仍然显示java没有安装。此时,需要使用source更新下.profile文件
        
  6.   $ source ~/.profile

 再次使用java -version命令可以看到如下输出:
    $ java -version 

  1.  java version "1.7.0_45"
  2.  Java(TM) SE Runtime Environment (build 1.7.0_10-b18)
  3.  Java HotSpot(TM) 64-Bit Server VM (build 23.6-b04, mixed mode)

 到此,jdk安装成功 。

二、安装hadoop-0.20.1 
    1、这个版本很老,官网已没有,csdn中可以下到,下载并解压(tar xzf hadoop-0.20.0.tar.gz)到/home/zhao/hadoop_old/目录下,目录名字可以自拟 
    2、 这个时候执行hadoop version 出现 hadoop commond not found,因为系统不知道你安装了hadoop,需要创建一个指向Hadoop安装目录的环境变量,再把安装目录放在命令行路径上:
    
export HADOOP_INSTALL=/home/zhao/hadoop_old/hadoop-0.20.1
    export PATH=$PATH:$HADOOP_INSTALL/bin 
    再次运行hadoop version
    
Hadoop 0.20.1
    Subversion http://svn.apache.org/repos/asf/hadoop/common/tags/release-0.20.1-rc1 -r 810220
    Compiled by oom on Tue Sep  1 20:55:56 UTC 2009 ,到此hadoop安装完成
三、SSH无密码验证配置
    Hadoop 需要使用SSH 协议,namenode 将使用SSH 协议启动 namenode和datanode 进程,伪分布式模式数据节点和名称节点均是本身,必须配置 SSH localhost无密码验证。
    用root用户登录,在家目录下执行如下命令:ssh-keygen -t rsa
    # ssh-keygen -t rsa
    Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): & 按回车默认路径 & Created directory '/root/.ssh'. &创建/root/.ssh目录& Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is: c6:7e:57:59:0a:2d:85:49:23:cc:c4:58:ff:db:5b:38 root@master
    通过以上命令将在/root/.ssh/ 目录下生成id_rsa私钥和id_rsa.pub公钥。
    进入/root/.ssh目录在namenode节点下做如下配置:
    # cat id_rsa.pub > authorized_keys
    配置完毕,可通过ssh 本机IP 测试是否需要密码登录:
    # ssh localhost 
四、Hadoop配置
    1、
进入/home/zhao/hadoop_old/hadoop-0.20.1/conf, 配置Hadoop配置文件 
    (1)、 
配置hadoop-env.sh文件
        添加 export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_45 编辑后保存退出。 
    (2)、
配置core-site.xml 
    
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000/</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/zhao/hadoop_old/hadooptmp</value>
</property>
    </configuration> 
    (3)、配置hdfs-site.xml
    
<configuration>
<property>
<name>dfs.name.dir</name>
<value>/home/zhao/hadoop_old/hdfs/name</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/zhao/hadoop_old/hdfs/data</value>
</property>
<property> 
<name>dfs.replication</name> 
<value>1</value> 
</property>
     </configuration> 
    (4)配置mapred-site.xml
    
<configuration>
<property> 
<name>mapred.job.tracker</name> 
<value>localhost:9001</value> 
</property> 
<property> 
<name>mapred.local.dir</name> 
<value>/home/zhao/hadoop_old/mapred/local</value> 
</property> 
<property> 
<name>mapred.system.dir</name> 
<value>/tmp/hadoop_old/mapred/system</value> 
</property>
   </configuration> 
五、hadoop启动
    1、进入 /home/zhao/hadoop_old/hadoop-0.20.1/bin目录下,格式化namenode
        # hadoop namenode -format 
        最后出现
SHUTDOWN_MSG: Shutting down NameNode at master/localhost表示成功 
    2、在这个目录下,启动所有守护进程
        #start-all.sh
    启动完成后,
可用jps命令查看hadoop进程是否启动完全。正常情况下应该有如下进程:
    10910 NameNode
    11431 Jps
    11176 SecondaryNameNode
    11053 DataNode
    11254 JobTracker
    11378 TaskTracker
 
    如果启动不完整,尝试关闭防火墙,ubuntu下,执行
    $ sudo ufw disable
    bin目录下,执行stop-all.sh,再次执行start-all.sh 
六、查看Hadoop工作情况
     
在WEB页面下查看Hadoop工作情况, 打开IE浏览器输入部署Hadoop服务器的IP:http://localhost:50070,http://localhost:50030
七、Hadoop使用
    一个测试例子wordcount 计算输入文本中词语数量的程序。
    WordCount在Hadoop主目录下的java程序包hadoop-0.20.1-examples.jar 中,执行步骤如下:
    在/usr/local/hadoop/hadoop-0.20.2/bin/目录下进行如下操作:
    $ hadoop fs -mkdir bxy(新建目录名称,可任意命名)
    # hadoop fs -copyFromLocal secure.2 bxy (找一个任意文件(这里是secure.2)将其copy到bxy文件夹)
    在/home/zhao/hadoop_old/hadoop-0.20.1下执行:
    # hadoop jar hadoop-0.20.2-examples.jar wordcount bxy output (提交作业,此处需注意bxy与output是一组任务,下次再执行wordcount程序,还要新建目录bxy1与output1不能跟bxy与output重名) 执行完毕后,可进入web界面刷新查看running job及completed job的显示。

0 0
原创粉丝点击