上面一篇已经配置好了,却不能用,原因在于摸石头过河,很多地方还不太准确。
一些基础知识
1.hadoop简单介绍,参考: http://www.taobaotest.com/blogs/qa?bid=10514
2.Hadoop集群有三种运行模式:单机模式、伪分布模式,完全分布模式;不同模式的环境配置也会有所不同
单机模式:
http://hi.baidu.com/kongxianghe123/item/d02118ceff090824ee466585hadoop2.2.0
http://blog.csdn.net/windyboy911/article/details/18078857hadoop2.2.0
伪分布式:http://blog.chinaunix.net/uid-21753661-id-3974080.html 该版本hadoop为1.0.4
完全分布式:http://blog.csdn.net/licongcong_0224/article/details/12972889 (完全分布式)
_ueditor_page_break_tag_
单机版实践
上一篇的环境配置是基于2.2.0以下的低版本,很多问题
Hadoop2.2.0环境配置
参考了:http://blog.itpub.net/28883355/viewspace-1129891/
①hadoop-env.sh
②yarn-env.sh
③core-site.xml
④hdfs-site.xml
新建两个文件夹/dfs/name /dfs/data
此处有错误,参考遇到的问题解决方案
⑤mapred-site.xml
⑥./hdfs namenode –forma格式化
⑦hadoop 2.2.0可以使用start-all.sh来把所有的进程开启
⑧jps查看一下进程是否都启用了
终于成功了
Ps 不知道为什么端口号是8088和50070
遇到的问题:
1. ./hdfs namenode –format报错 cannot create directory /dfs/name/current
原因可能是hadoop没有权限在根目录下新建current文件夹
解决:修改hdfs-site.xml
2.the auxservice:mapreduce_shuffile does not exist
参考:http://blog.csdn.net/baiyangfu_love/article/details/13504849
编辑完重启服务
其它:
1.rm –rf删除文件夹
linux中创建文件用touch 例如:touch 1.txt
删除文件用rm 例如:rm -f 1.txt
创建目录用mkdir 例如:mkdir daiyuanqi
删除空目录用rmdir 例如:rmdir daiyuanqi (有东西的目录不能删)
删除装有东西的目录就用rm -rf 例如rm -rf XXX
来个小例子
参考:http://hi.baidu.com/kongxianghe123/item/731aa74762111ae81381da9b
统计test文本里的内容
下面缺了把txt里的内容放入hadoop的文件系统
hadoop fs -put test.txt input
运行结果:
也可localhost:8088 查看