安装篇:
安装是最基本的,也是最难的。俗话说的好,万事开头难啊!的确如此。刚开始,自己折腾,总会是这样那样的问题,也许一个小的问题,就要推倒了重来。我现在就将这几天(2014-2-16~2014-2-18)折腾Hadoop的经验做个简单的分享。
一、准备
所谓不打无准备的战,是也。准备是一件很重要的事情。
我的准备如下:
硬件:
两台电脑:一台笔记本(1G内存,XP,),一台台式机(2G内存,XP)
移动硬盘(500G),硬件可视条件而定,至少的有一台电脑,并且要能上网的啊。
软件准备:
操作系统:Centos 6.5
应用软件:
1、Cygwin 需要安装ssh
2、hadoop-0.20.2,hadoop-2.2.0都是完整下载(就是官网目录下的全部下下来了,也不多,主要有用的就是安装包还有源码)
3、jdk 1.5,jdk1.6,jdk1.7,jdk1.8由于两台机器都是开发经常使用,因此各种jdk都有,在此推荐1.6
4、eclipse 3.7(eclipse 各种版本也备有),需要下载hadoop插件
5、VMware Workstation
手头资料:
1、可以随时连上互联网。
2、一本专业的hadoop书,我用的是前年(惭愧啊,一直没看,还是全新的)买的<实战hadoop-开启通向云计算的捷径>,书中用的hadoop才是0.20.2。因此我也主要用这个版本了。
3、一本专业的linux书。由于之前对linux用的比较少,还是不太熟悉,因此它也就是很必要的啦。
二、开工
1、先搭建windos下的。也就是利用Cygwin实现的。我觉得对于我来说这个是可以最快看见成效的,因此就选择从它开始。
⑴、安装Cygwin
从Cygwin官网下载它的setup程序,next step 就行。在选择安装包的时候一定要注意安装上ssh包。如果没有安装什么包,可以直接重启setup程序,重现选择需要安装的安装。
遇到的问题:
①.好多命令不能用,例如,你输入一个ls命令,提示 command not find。
解决方案:
思路:用which ls查看一下有没有这个命令。正常的话是查不出来的。但是这时你可以看到你用的环境变量信息。这就是网上好多说碰到这个问题改Cygwin.bat文件为如下的原因(其中路径视具体安装路径而定):
@echo off D: set CYGWIN=tty notitle glob set PATH=%PATH%;d:/cygwin/bin;d:/cygwin/sbin;d:/cygwin/usr/bin;d:/cygwin/usr/sbin;d:/cygwin/usr/local/bin set LD_LIBRARY_PATH=d:/cygwin/lib;d:/cygwin/usr/lib;d:/cygwin/usr/local/lib chdir D:/cygwin/bin bash --login -i
②.ssh安装了提示不好使
Ssh安装之后,用ssh localhost提示如下错误:Connection refused。这个可以在var/log/sshd.log中查看具体原因。在网上有很多解决办法,但是什么样的方法是适合你的,就的从具体的问题出发,我发现我的主要是我权限的问题,如下:Privilege separation user sshd does not exist如下:http://blog.csdn.net/zhuying_linux/article/details/7860712。提到了要用administrator而我不是用的adminitrator账号。我看了之后利用ssh-host-config重新配置了sshd。这时在Should Privilege Separation be used?时选择了yes。重新用net start sshd启动后,再用ssh localhost测试成功。
(2)、安装hadoop
解压tar.gz包。注意在Cygwin中,可以利用tar zxvf /cygdrive/d/hadoop/hadoop-0.20.2.tar.gz就可以。
遇到问题:
1、输入命令不好使
这个主要是第一次用hadoop,使用不熟练。只要多使用就能会心了。
2、file not exists 错误.
编辑mapred-site.xml (在Cygwin下需要配置,不然会出现FileNotFoundException):
<property> <name>mapred.job.tracker</name> <value>localhost:9001</value> </property> <property> <name>mapred.child.tmp</name> <value>D:/hadoop/temp</value> //目录可以是任意的 </property>
3、文件怎么都上传不上去,是防火墙没有关闭的缘故。把例外端口号添加上去就行了。
WordCount实例终于折腾成功了^_^:
值得参考的文章:
http://blog.csdn.net/savechina/article/details/5656937
……