Windows下Hadoop的搭建
1.安装JDK
MapReduce程序的编写和Hadoop的编译都依赖于JDK,光JRE是不够的。由于安装JDK对于学习Hadoop的人来说肯定不是问题,这里就不再赘述安装过程了。
2.安装Cygwin
Cygwin是一个windows下的linux环境模拟工具,我们下载的CygwinSetup.exe是一个在线安装程序,下载下来Setup.exe之后根据提示一步步安装,建议选择先下载然后安装,这是因为下载有时需要很长的过程,如果边下载边安装可能会出现问题。在安装Cygwin过程中其他选项默认安装,其中Base分支下要选择安装sed,Editors分支下要选择了vim,Net分支下要选择了OpenSSH,所谓选择安装上诉项目就是点击对应项目出现其版本号即可。安装sed是为了在eclipse上编译Hadoop,安装vim,以方便在Cygwin上直接修改配置。
3.配置Windows系统变量
需要配置的环境变量为:JAVA_HOME=jre的安装目录,Path=JDK的bin目录;Cygwin的bin目录;Cygwin的usr/bin目录。CYGWIN=ntsectty。
4.安装sshd服务
启动Cygwin,在命令行输入ssh-host-config,出现提示Shouldprivilegeseparationbeused?时候选择No。当看到Hostconfigurationfinished.Havefun!则表示ssdh服务安装成功。
5.配置sshd服务
首先在服务中启动CYGWINsshd服务然后打开Cygwin输入ssh-keygen生成密钥文件,输入ssh-keygen后遇见要输入文字的地方直接按回车,一般是按三次。接下来生成authorized_keys.用cd命令切目录到~/.ssh下执行cpid_rsa.pubauthorized_keys复制生成即可。此时执行exit退出Cygwin.重新打开Cygwin执行sshlocalhost,如果是第一次根据提示输入yes.然后执行who命令,如何能查看到当前登录用户信息则表示ssh登录成功。(这里必须复制生成authorized_keys后关闭然后再打开Cygwin否则可能会出错)。
6.下载并安装Hadoop
将下载的的Hadoop安装包解压到本地目录,并修改conf文件夹下的四个配置文件分别是hadoop-env.sh、core-site.xml、hdfs-site.xml和mapred-site.xml。
修改hadoop-env.sh
将hadoop-env.sh中的JAVA_HOME修改成自己的JDK安装路径,由于Linux和Windows环境下路径写法不一样,在复制路径后要将“\”改成“/”并且要用Cygwin的驱动,例如JDK安装目录是C:\Java\jdk1.7.0_03则该配置文件中应该写成JAVA_HOME=/cygdrive/C/Java/jdk1.7.0_03,并将对应的export前面的#号去掉并保存。
修改core-site.xml
为简化core-site.xml配置将\run\src\core目录下core-default.xml文件复制\run\conf目录下,并将core-default.xml文件名改成core-site.xml修改fs.default.name的值,如下所示:
<name>fs.default.name</name> <value>hdfs://localhost:8888</value>
其中端口号8888根据需要自行设定
修改hdfs-site.xml
为简化hdfs-site.xml配置,将run\src\hdfs目录下的hdfs-default.xml文件复制到run\conf目录下,将hdfs-default.xml文件名改成hdfs-site.xml。改mapred.job.tracker的值,默认为3,这里修改为1,这是因为我们安装的是单机版的伪分布式,故不需要3份备份,只要一份即可,如下所示:
<name>dfs.replication</name> <value>1</value>
修改mapred-site.xml
为简化mapred-site.xml配置,run\src\mapred下的mapred-default.xml文件复制到run\conf并将mapred-default.xml文件名改成mapred-site.xml修改mapred.job.tracker的值,如下所示:
<name>mapred.job.tracker</name> <value>localhost:9999</value>
其中端口号9999根据需要自行设定.
至此Hadoop安装完毕!
7.启动Hadoop
在Cygwin中,进入hadoop的bin目录,运行./start-all.sh启动hadoop,在启动成功之后,可以执行./hadoopfs-ls/命令,查看hadoop的根目录,至此Hadoop在Windows平台下安装成功。并可以正式启动。
(详细相关教程[url]http://v-lad.org/Tutorials/Hadoop/00-Intro.html[/url])