分享

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

下载hadoop
hadoop下载地址:


这里下载的版本是1.0.3

$ mkdir hadoop



安装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. </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,但是需要安装包

envim.jpg
第二
:把hadoop中bin路径添加到PATH中。
目的能够识别hadoop命令
envir.jpg


第三步:执行命令
  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


安装完毕,我们该怎么用,该怎么测试安装成功。

集群安装完毕,该如何测试和使用集群-hadoop单机


相关文档推荐:
Ubuntu上搭建Hadoop环境(单机模式+伪分布模式)


来自群组: Hadoop技术组

本帖被以下淘专辑推荐:

已有(22)人评论

跳转到指定楼层
BoyOfChina 发表于 2014-2-23 17:25:51
ubuntu和redhat有什么区别么?作为初学者,真的很头疼
回复

使用道具 举报

pig2 发表于 2014-2-23 19:01:12
BoyOfChina 发表于 2014-2-23 17:25
ubuntu和redhat有什么区别么?作为初学者,真的很头疼

ubuntu是桌面版是比较受欢迎的。但是作为服务器不太好。
服务器版一般使用其它Linux版本。
作为初学者,可以选择ubuntu作为入门。本站有很多资料作为参考
(这里解释一下,桌面版可以表面上理解为类似window,服务器版没有界面,只有命令行。等接触时间长了就明白什么桌面版什么是服务器版了)

搭建集群必知:Linux常用命令及修改文件总结(不断更新)


Ubuntu常用命令总结及修改DNS的多种方法总结


Linux(ubuntu)如何使用ssh远程登录


linux(ubuntu)安装Java jdk环境变量设置及小程序测试

回复

使用道具 举报

xioaxu790 发表于 2014-2-25 20:00:29
pig2 发表于 2014-2-23 19:01
ubuntu是桌面版是比较受欢迎的。但是作为服务器不太好。
服务器版一般使用其它Linux版本。
作为初学者 ...

           实现ssh免密码登陆,也有这种方式:
                (1)执行命令ssh-keygen -t rsa   产生秘钥位于/root/.ssh/
                (2)执行命令cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys  产生授权文件
                (3)验证:ssh localhost

回复

使用道具 举报

xioaxu790 发表于 2014-2-25 21:30:37
pig2 威武,壮哉!!!!!!!!
回复

使用道具 举报

pig2 发表于 2014-2-25 22:52:23
安装过程中可能产生的问题:
  1. sudo apt-get install ssh
  2. Reading package lists... Done
  3. Building dependency tree      
  4. Reading state information... Done
  5. Package openssh-server is not available, but is referred to by another package.
  6. This may mean that the package is missing, has been obsoleted, or
  7. is only available from another source
复制代码
上面的情况是因为我们更新安装包:使用下面命令更新一下包就可以了。
  1. sudo apt-get update
  2.        sudo apt-get upgrade
  3. 命令能找到资源并更新成功。
复制代码
对于下面ssh出现拒绝是因为我们ssh没有安装成功
  1. ssh localhost
  2. ssh: connect to host aboutyun port 22: Connection refused
复制代码
回复

使用道具 举报

ZWSciscoccie 发表于 2014-4-5 19:18:24

顶顶顶 顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶
回复

使用道具 举报

ZWSciscoccie 发表于 2014-4-5 19:18:56
回复

使用道具 举报

472827074@qq.co 发表于 2014-4-14 13:51:32
顶起来顶起来顶起来顶起来
回复

使用道具 举报

123下一页
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条