Windows下Hadoop的环境安装[转]

1.下载并安装Cygwin,记得cygwin安装中要把SSH选择上,因为后面Hadoop会用到,不详述cygwin的安装过程.我是安装在D:cygwin下

2.配置系统环境变量

在windows命令行中输入unix命令,可以执行则说明cygwin和环境变量配置成功.

3.打开D:cygwinCygwin.bat,配置ssh,执行命令ssh-host-config

因为我已经配置过,并用ssh服务已经启动,所以报错了,你们在配置的时候一路YES即可,有兴趣的也可以看一下英文说明,都配置了哪些东东.

当看到"HAVE FUN"则表明配置成功.

这时候会在你的系统上增加一个SSH服务,启动之

4.配置生成RSA密钥对,使SSH可以无密码登陆,以方便后面Hadoop的启动

cygwin的控制台中输入ssh localhost,这时候输入密码(当前windows登陆用户密码)按理说应该可以登进去.在此我纠结了很久,明明密码是对的,却怎么也登不了.这时要创建用户组与密码.

cygwin的控制台中输入如下命令:

mkpasswd cl > /etc/passwd

mkgroup --local > /etc/group

OK,现在可以生成RSA密钥对实现密码登陆了

cygwin的控制台中

  1)输入"ssh-keygen"全部直接回车

  2)"cd ~/.ssh"

  

  此时应该有以上两个文件,id_rsa.pub即是公钥

  3)"cp id_rsa.pub authorized_keys" authorized_keys是SSH登陆时候自动去取的公钥文件,当与id_rsa匹配时就可以无密码登陆.

  4)"ssh localhost"已经不用密码了

  

-----------------------------------------------到此cygwin及SSH配置完成---割一下-----------------------------------------

5.解压hadoop-1.0.3.tar.gz到D:hadoop un,目录可以自己安排

以下要修改若干配置,兄弟们淡定

  1)D:hadoop unconfhadoop-env.sh文件中配置 "export JAVA_HOME=D:/bea/jdk160_05" JDK为自己机器上JDK地址,记得要把这句话前面的"#"去掉

  2)将D:hadoop unsrccorecore-defult.xml复制为D:hadoop unconfcore-site.xml并替换原来文件

<property>
<name>fs.default.name</name>
<value>hdfs://LEXNHDH3NS5AMUS:8888</value>
<description>The name of the default file system. A URI whose
scheme and authority determine the FileSystem implementation. The
uri's scheme determines the config property (fs.SCHEME.impl) naming
the FileSystem implementation class. The uri's authority is used to
determine the host, port, etc. for a filesystem.</description>
</property>

   修改红色部分,格式为hdfs://机器名:端口.此为HDFS的端口,可自行配置,但不要和已有端口冲突

  3)将D:hadoop unsrchdfs-defult.xml复制为D:hadoop unconfhdfs-site.xml并替换原来文件,无修改

  4)将D:hadoop unsrcmapred-defult.xml复制为D:hadoop unconfmapred-site.xml并替换原来文件

<property>
<name>mapred.job.tracker</name>
<value>localhost:9999</value>
<description>The host and port that the MapReduce job tracker runs
at. If "local", then jobs are run in-process as a single map
and reduce task.
</description>
</property>

    修改红色部分,可自行配置,但不要和已有端口冲突

6.Cygwin下进入hadoop的bin目录,执行./hadoop namenode -format 初始化HDFS

    start-all.sh启动hadoop

    stop-all.sh关闭hadoop

7.执行jps及./hadoop fs -ls /

成功则说明hadoop启动成功

------------------------------------------hadoop配置完成-------------------继续割------------------------

8.现在开始将myeclipse与hadoop结合起来,以方便以后的开发调试

我用的myeclipse版本为6.6,记得myeclipse要运行在jre1.6环境下,不然hadoop插件会报错.

如果你的myeclipse不是在1.6下运行,则将1.6的JRE复制并替换D:Program FilesMyEclipse 6.6jre即可

9.我使用的hadoop是1.0.3,所以我用的插件是hadoop-eclipse-plugin-1.0.3.jar.

检查hadoop-eclipse-plugin-1.0.3.jar的lib中是否有如图的jar包,如果没有则到D:hadoop unlib下将相应的jar包复制过来

并且修改MANIFEST.MF文件,Bundle-ClassPath:下增加相应的jar包,例如:

Bundle-ClassPath: classes/,lib/hadoop-core.jar,lib/commons-cli-1.2.jar,lib/commons-httpclient-3.0.1.jar,lib/jackson-core-asl-1.8.8.jar,lib/jackson-mapper-asl-1.8.8.jar,lib/commons-configuration-1.6.jar,lib/commons-lang-2.4.jar

检查无误后将此jar包复制到D:Program FilesMyEclipse 6.6eclipseplugins下,重启myeclipse

10.进入首选项配置hadoop安装目录

进入window中打开Perspective并打开Map/Reduce

新增hadoop location

配置如图

此时可以访问HDFS则说明配置成功

--------------------------------------------over------------------------------------------------------------

原文地址:https://www.cnblogs.com/fx2008/p/3607001.html