windows搭建hadoop环境

来源:互联网 发布:单片机创新大赛 编辑:程序博客网 时间:2024/05/16 05:34
1、安装jdk

2、安装cygwin http://www.cygwin.com/
选择安装包
Net Category下的:openssh,openssl
BaseCategory下的:sed (若需要Eclipse,必须sed)
Devel Category下的:subversion(建议安装)。
直接安装

3、配置变量 将cywin的bin目录加到系统环境变量path里面

4、配置sshd服务
启动sygwin输入:ssh-host-config
全部yes(网上说第三个应该是no,我装的时候no出问题了,这个no的意思是创建一个sshd用户)

5、配置免密码登录
启动sshd服务,输入ssh-keygen一直回车
进去cd .sshmul
复制cp id_rsa.pud authorized_keys
并退出sygwin

6、重新启动cygwin输入:ssh localhost 
yes然后一直回车,若登录成功表示ok了

7、安装hadoop直接从网上下载解压
下面开始配置Hadoop。需要配置的文件:(hadoop/conf目录下)
hadoop-env.sh
core-site.xml
hdfs-site.xml
mapred-site.xml
第一个文件 hadoop-env.sh
图片
把里面的JAVA_HOME改掉,注意export前面的#号要去掉。
而且必须要使用linux的路径表达方式。我的jdk路径是 C:\JAVA\jdk1.6.0_31,在CygWin中对应的路径为: /cygdrive/c/java/jdk1.6.0_31
ps:注意目录不能有空格
第二个文件:core-site.xml
首先删除它,然后把hadoop/src/core目录下的core-default.xml文件复制到conf目录下,并命名为core-site.xml。然后修改其中的fs.default.name变量,如下所示。
(确保端口号(我的是9100)未被占用)

图片

第三个文件:hdfs-site.xml
首先把它删除,然后复制src/hdfs目录下的hdfs-default.xml到conf目录下,并改名为hdfs-site.xml
然后修改dfs.replication变量,如下图示:
该变量意思是文件系统中文件的复本数量。在单独的一个数据节点上运行时,HDFS无法将块复制到三个数据节点上。
图片
第四个文件:mapred-site.xml
首先删除它,然后复制src/mapred目录下的mapred-default.xml到conf目录下,并改名为mapred-site.xml,然后修改其mapred.job.tracker变量:
(同样确保端口号未被占用)
图片

8、测试是否成功(中间我出现很多问题)
jps 查看进程是否有五个进程都启动了
倘若启动不成功,就关闭防火墙、将hadoop目录下就是把“masters”和“slaves”中都配置上主机的IP,我配置的是“127.0.0.1”,这样问题就解决了,重新格式化后,5个节点顺利的启动起来了。

ps:我的是win7+hadoop1.1+jdk6.0
启动的时候TaskTracker无法启动
ERROR org.apache.hadoop.mapred.TaskTracker: Can not start task tracker because java.io.IOException: Failed to set permissions of path: \tmp\hadoop-cyg_server\mapred\local\ttprivate to 0700
我在官网一查说这是bug所以没办法只有放弃windows搭建环境改成linux环境
https://issues.apache.org/jira/browse/HADOOP-7682;
参考博客:http://blog.csdn.net/ruby97/article/details/7423088