当前位置: > Linux集群 > Hadoop >

Hadoop伪分布安装过程:Hadoop单机环境搭建指南(ubuntu)

时间:2014-10-25 14:24来源:linux.it.net.cn 作者:it
下载hadoop
hadoop下载地址:

http://www.apache.org/dyn/closer.cgi/hadoop/core/

这里下载的版本是1.0.3

$ mkdir hadoop

$ wget http://www.fayea.com/apache-mirr ... hadoop-1.0.3.tar.gz .


安装java
首先用“java -version”查看是否已安装,如果显示类似于java version "1.7.0_147-icedtea 则表示已安装
没有安装可以参考: Ubuntu 11.04 下安装配置 JDK 7   linux(ubuntu)安装Java jdk环境变量设置总结
安装必须设置JAVA_HOME和CLASSPATH
我的配置:
export PATH=${PATH}:/usr/lib/jvm/java-6-openjdk-amd64/bin
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64/
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JRE_HOME}/lib:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
并将这两行语句放在:~/.bashrc中

 
下面对里面的每一个进行注释:
export PATH=${PATH}:/usr/lib/jvm/java-6-openjdk-amd64/bin
这里是你安装java的路径,上面操作代表:你需要创建jvm文件夹(mkdir jvm),然后解压到jvm中,解压完毕,你会看到java-6-openjdk-amd64文件夹,文件夹中,有一个bin文件。上面就是对bin路径对PATH的赋值。
 
上面修改因为安装的路径可能不一样,所以需要填写自己的安装路径,即为bin的路径。这里很多的文档误导成jdk路径。这里填写错误,后面命令就不能执行。
 

安装ssh
$ sudo apt-get install ssh
安装完成后,需要确认可以用ssh免密码登录localhost
$ ssh localhost
如果需要密码才能登录,则需要设置:
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
这两个命令的解释可以查看云技术基础:集群搭建SSH的作用及这些命令的含义
安装rsync
rsync是linux实现远程同步的软件
$ sudo apt-get install rsync

配置启动hadoop
解压:
$ tar -zxvf  hadoop-1.0.3.tar.gz
设置JAVA_HOME
编辑conf/hadoop-env.sh文件,找到:
# export JAVA_HOME=/usr/lib/j2sdk1.5-sun
修改为:
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64/
(注意的是
JAVA_HOME为jdk的路径,不是你其他文件夹的路径)

修改配置文件:

想知道对于配置文件中参数的说明可以查看Hadoop1.x安装配置文件及参数说明
如果不知道java在什么地方请用whereis java查询
修改conf/core-site.xml:

  1. <configuration>
  2. <property>
  3. <name>fs.default.name</name>
  4. <value>hdfs://localhost:9000</value>
  5. </property>
  6.  
  7. </configuration>
修改conf/hdfs-site.xml:
  1. <configuration>
  2. <property>
  3. <name>dfs.replication</name>
  4. <value>1</value>
  5. </property>
  6. <property>
  7. <name>hadoop.tmp.dir</name>
  8. <value>/home/work/hadoop_tmp</value>
  9. </property>
  10. </configuration>
修改conf/mapred-site.xml:
  1. <configuration>
  2. <property>
  3. <name>mapred.job.tracker</name>
  4. <value>localhost:9001</value>
  5. </property>
  6. </configuration>
初始化hadoop Namenode:
$ bin/hadoop namenode –format

在这里可能会遇到错误出现 命令不识别,是因为环境变量没有配置
第一步:配置环境变量
  1. vi  /etc/environment
也可通过vim,但是需要安装包
 
第二
:把hadoop中bin路径添加到PATH中。
目的能够识别hadoop命令
 


第三步:执行命令
  1. $ bin/hadoop namenode –format
这里需要注意的时候xml一定要设置正确,否则format会报错。



上面问题解决,继续下面




启动:
$ bin/start-all.sh
确认启动:
$ jps
5146 Jps
4538 TaskTracker
4312 JobTracker
4015 DataNode
4228 SecondaryNameNode
3789 NameNode
表示启动成功

以下内容写入~/.bashrc:
  1. alias hadoop='/home/zxm/hadoop/hadoop-1.0.3/bin/hadoop'  
  2. alias hls='hadoop fs -ls' 
  3. alias hlsr='hadoop fs -lsr' 
  4. alias hcp='hadoop fs -cp ' 
  5. alias hmv='hadoop fs -mv' 
  6. alias hget='hadoop fs -get' 
  7. alias hput='hadoop fs -put' 
  8. alias hrm='hadoop fs -rm' 
  9. alias hmkdir='hadoop fs -mkdir' 
  10. alias hcat='hadoop fs -cat' 
  11. alias hrmr='hadoop fs -rmr' 
  12. alias hstat='hadoop fs -stat' 
  13. alias htest='hadoop fs -test' 
  14. alias htext='hadoop fs -text' 
  15. alias htouchz='hadoop fs -touchz' 
  16. alias hdu='hadoop fs -du' 
  17. alias hdus='hadoop fs -dus' 
  18. alias hchmod='hadoop fs -chmod' 
  19. alias hchgrp='hadoop fs -chgrp' 
  20. alias hchown='hadoop fs -chown' 
  21. alias htail='hadoop fs -tail'
常见问题解决方案
问题1:运行hadoop命令是出现“Warning: $HADOOP_HOME is deprecated.”报警
解决:添加   export HADOOP_HOME_WARN_SUPPRESS=TRUE 到 hadoop-env.sh  中

问题2:namenode无法启动
解决:删除/tmp/hadoop* 执行bin/hadoop namenode –format


安装完毕,我们该怎么用,该怎么测试安装成功。 (责任编辑:IT)
------分隔线----------------------------