ITPub博客

首页 > 大数据 > Hadoop > Hadoop1.2.1 伪分布式

Hadoop1.2.1 伪分布式

Hadoop 作者:llluolu 时间:2013-09-28 07:49:59 0 删除 编辑

尝试进入大数据领域开发,从目前最火的Hadoop入手是必须的,本文一步步记录了 Ubuntu 环境安装Hadoop 1.2.1 ,搭建单机模式以及伪分布式模式,希望对各位和我一样的菜鸟有所帮助,共同学习进步,欢迎交流。尝试2.1安装失败,由于文件结构不太一样缺乏相关资料,也非做运维的,遂放弃改用成熟的hadoop 1.2.1版本。

----------------------------------------单机模式-----------------------------------------

下载:hadoop-1.2.1.tar.gz

解压:

[plain] view plaincopy
  1. tar -xzvf hadoop-1.2.1.tar.gz   
转移:

 

 

[plain] view plaincopy
  1. mv hadoop-1.2.1/ /opt  
进入conf文件配置环境变量

 


让环境变量配置生效source,是source,不是sh,补充下sh和.的区别,参考

 

[plain] view plaincopy
  1. source hadoop-env.sh   

 

检测是否安装成功

[html] view plaincopy
  1.   

 

单机版hadoop安装成功,测试一下

 

[html] view plaincopy
  1. mkdir input  
[html] view plaincopy
  1. cp -R conf input/  

 

运行wordcount程序并将结果保存到output

hadoop hadoop-examples-1.2.1.jar 

错误: 找不到或无法加载主类 hadoop-examples-1.2.1.jar

hadoop jar hadoop-examples-1.2.1.jar wordcount input output   发现错误,粗心害死猫....修改后运行,OK!


单机模式成功, 接下来搭建伪分布式

-------------------------------------------华丽的分割线 伪分布式-----------------------------------------

hadoop目录下创建以下目录:

 

[plain] view plaincopy
  1. dat@dat-HP:/opt/hadoop-1.2.1$ mkdir tmp  
  2. dat@dat-HP:/opt/hadoop-1.2.1$ mkdir hdfs  
  3. dat@dat-HP:/opt/hadoop-1.2.1$ mkdir hdfs/name  
  4. dat@dat-HP:/opt/hadoop-1.2.1$ mkdir hafs/data  

编辑core-site.xml

 

 

[plain] view plaincopy
  1.   
  2.      
  3.         fs.default.name  
  4.         hdfs://localhost:9000  
  5.       
  6.       
  7.         hadoop.tmp.dir  
  8.         /opt/hadoop-1.2.1/tmp  
  9.       
  10.   

hdfs-site.xml:

 

 

[plain] view plaincopy
  1.   
  2.     
  3.         dfs.replication  
  4.          
  5.       
  6.       
  7.         dfs.name.dir  
  8.         /opt/hadoop-1.2.1/hdfs/name  
  9.       
  10.       
  11.         dfs.data.dir  
  12.         /opt/hadoop-1.2.1/hdfs/data  
  13.       
  14.   

mapred-site.xml:

 

 

[plain] view plaincopy
  1.   
  2.     
  3.         mapred.job.tracker  
  4.         localhost:9001  
  5.       
  6.   

格式化HDFS(建议只格式化一次,多次格式化据传后边会引起问题,本人没有尝试...):

 

 

[plain] view plaincopy
  1. dat@dat-HP:/opt/hadoop-1.2.1/conf$ source hadoop-env.sh   
  2. dat@dat-HP:/opt/hadoop-1.2.1/conf$ hadoop namenode -format  


 

启动Hadoop:

执行执行bin/start-all.sh来启动所有服务,包括namenode,datanode,start-all.sh脚本用来装载守护进程

 

[plain] view plaincopy
  1. dat@dat-HP:/opt/hadoop-1.2.1/bin$ start-all.sh   


 

用java的jps命令验证是否安装成功:

 

[plain] view plaincopy
  1. dat@dat-HP:/opt/hadoop-1.2.1$ jps  


 

少一个DataNode进程没有启动,通过查看上边现实的路径下的日志发现:


很明显,data文件夹的权限不对,修改权限:

 

[plain] view plaincopy
  1. dat@dat-HP:/opt/hadoop-1.2.1/hdfs$ chmod 755 data  

 

关闭hadoop,重新启动:

 

[plain] view plaincopy
  1. dat@dat-HP:/opt/hadoop-1.2.1/bin$ stop-all.sh  
[plain] view plaincopy
  1. dat@dat-HP:/opt/hadoop-1.2.1/bin$ start-all.sh   
[plain] view plaincopy
  1. dat@dat-HP:/opt/hadoop-1.2.1/bin$ jps  


6个进程全部启动了,此时安装正常,可以进行Hadoop的相关操作了。

 


检查运行状态:可以通过下面的操作来查看服务是否正常,在Hadoop中用于监控集群健康状态的Web界面

http://localhost:50030/     - Hadoop 管理介面
http://localhost:50060/     - Hadoop Task Tracker 状态
http://localhost:50070/     - Hadoop DFS 状态


 

hadoop的伪分布模式已经安装成功,再次在伪分布模式下运行一下WordCount来感受MapReduce过程:

这时注意程序是在文件系统dfs运行的,创建的文件也都基于文件系统:


首先在dfs中创建input目录

 

[plain] view plaincopy
  1. dat@dat-HP:/opt/hadoop-1.2.1/conf$ hadoop dfs -mkdir input  
  2. Warning: $HADOOP_HOME is deprecated.  

将conf中的文件拷贝到dfs中的input

 

 

[plain] view plaincopy
  1. dat@dat-HP:/opt/hadoop-1.2.1$ hadoop dfs -copyFromLocal conf/* input  

在伪分布式模式下运行WordCount

 

 

[plain] view plaincopy
  1. dat@dat-HP:/opt/hadoop-1.2.1$ hadoop jar hadoop-examples-1.2.1.jar wordcount input output  


 

INFO mapred.JobClient:  map 100% reduce 0% 到这里卡死不动了。

解决办法:查询鸟文论坛帖子(http://stackoverflow.com/questions/10165549/hadoop-wordcount-example-stuck-at-map-100-reduce-0)发现,修改/etc/hosts文件,加入主机名和IP地址的映射。

检查主机名:

 

[plain] view plaincopy
  1. dat@dat-HP:/opt/hadoop-1.2.1/conf$ hostname  

 


修改/etc/hosts文件:


重新来过:

 

[plain] view plaincopy
  1. hadoop dfs -rmr output/  
  2. hadoop jar hadoop-examples-1.2.1.jar wordcount input output  
依旧不起作用...........重启,再重新来过.................ok!!!

oK!!看见没有,你成功了!!!!!!

检测一下输出信息:

[plain] view plaincopy
  1. dat@dat-HP:/opt/hadoop-1.2.1$ hadoop dfs -cat output/*  

 

ok!!此时伪分布式系统环境已可以正常使用~~~!

<!-- 正文结束 -->

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

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

注册时间:2009-04-09