`
xpenxpen
  • 浏览: 703154 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

hadoop0.20.2单机伪分布式安装(win7 cygwin)

阅读更多
初学hadoop,折腾了几天总算把hadoop0.20.2在windows上安装成功了。因为网上很多安装成功的资料都是用的hadoop0.20.2,所以我们初学就先用这个版本。

本文安装环境概述:
windows7
jdk1.6.0_43
cygwin
openssh
hadoop0.20.2

hadoop0.20.2版本比较老,所以最好用jdk6,不要用jdk7,以免出现一些奇怪的问题。

1.安装cygwin和openssh,配置ssh免密码登陆
可以参考另一篇文章http://xpenxpen.iteye.com/blog/2061856
不要小看这步,这步没做好,后面都是徒劳。本人就在这栽跟头了,浪费了很多时间。

2. 下载hadoop0.20.2
hadoop所有的历史版本可以在这里找到
http://archive.apache.org/dist/hadoop/core
下载完了,解压。比如我们解压到d盘。D:\opensource\hadoop\hadoop-0.20.2

3.创建符号链接(仅限Win7)
mklink /d c:\tmp c:\cygwin64\tmp
mklink /d d:\tmp c:\cygwin64\tmp

这步是比较关键的一步,因为hadoop的代码编写没有考虑到windows系统,所以tmp目录的定位是比较乱的,这里将c:\tmp,d:\tmp全部链接到cygwin下的tmp目录,后面就不会报诸如tmp目录找不到的错了。d:\tmp是由于我将hadoop-0.20.2解压到D盘了,c:\tmp则是因为cygwin装在C盘。如果你装在别的盘上了,则改成相应的盘符。

4. 修改/home/<user>/.bashrc
所指的home是C:\cygwin64\home
export JAVA_HOME=/cygdrive/c/jdk1.6.0_43
export PATH=/cygdrive/d/opensource/hadoop/hadoop-0.20.2/bin:$JAVA_HOME/bin:$PATH


重新进入cygwin确认
$ which java
/cygdrive/c/jdk1.6.0_43/bin/java

$ which hadoop
/cygdrive/d/opensource/hadoop/hadoop-0.20.2/bin/hadoop


5.修改hadoop-0.20.2/conf/hadoop-env.sh
export JAVA_HOME=/cygdrive/c/jdk1.6.0_43
export HADOOP_LOG_DIR=/tmp/logs


6.修改hadoop-0.20.2/conf目录下的3个配置文件
core-site.xml
	<property>
		<name>fs.default.name</name>
		<value>hdfs://localhost:9000</value>
	</property>


hdfs-site.xml
	<property>
	  <name>dfs.replication</name>
	  <value>1</value>
	</property>


mapred-site.xml
	<property>
	  <name>mapred.job.tracker</name>
	  <value>localhost:9001</value>
	</property>
	<property> 
	  <name>mapred.tasktracker.map.tasks.maximum</name>
	  <value>4</value>
	</property> 
	<property> 
	  <name>mapred.tasktracker.reduce.tasks.maximum</name>
	  <value>4</value>
	</property>


7.格式化名称节点
hadoop namenode -format

会创建C:\cygwin64\tmp\hadoop-<user>\dfs\name目录

8.启动集群
start-all.sh


9.检查是否正常

9.1 访问网页查看状态
访问http://localhost:50030查看 JobTracker 的运行状态
访问http://localhost:50060查看 TaskTracker 的运行状态
访问http://localhost:50070查看 NameNode 以及整个分布式文件系统的状态,浏览分布式文件系统中的文件以及 log 等

9.2 查看进程,应该有5个java进程
$ ps -ef | grep java
  pchen4    8404       1 ?        12:55:30 /cygdrive/c/jdk1.6.0_43/bin/java
  pchen4    7596       1 ?        12:55:19 /cygdrive/c/jdk1.6.0_43/bin/java
  pchen4    3596       1 pty1     12:55:37 /cygdrive/c/jdk1.6.0_43/bin/java
  pchen4    6836       1 ?        12:55:49 /cygdrive/c/jdk1.6.0_43/bin/java
  pchen4    8144       1 pty1     12:55:06 /cygdrive/c/jdk1.6.0_43/bin/java


9.3 检查C:\cygwin64\tmp目录下文件是否都生成了


10.停止集群
stop-all.sh


11.wordcount测试
hadoop目录下有一个hadoop-0.20.2-examples.jar,自带wordcount,顺利安装完hadoop后可以测试一下。

首先找一个文本文件,比如http://introcs.cs.princeton.edu/java/data/dickens.txt
然后将这个文件放到hdfs上
hadoop fs -put dickens.txt input/dickens.txt


然后运行wordcount
hadoop jar hadoop-0.20.2-examples.jar wordcount input output


如果一切顺利,可以看到单词的统计出来了。
hadoop fs -cat output/part-r-00000 > aa.txt

查看一下aa.txt,内容正确的话就表明hadoop安装无误了。

12.参考资料
http://yangshangchuan.iteye.com/blog/1839814
  • 大小: 35.3 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics