前言
Windows下运行Hadoop,通常有两种方式:一种是用VM方式安装一个Linux操作系统,这样基本可以实现全Linux环境的Hadoop运行;另一种是通过Cygwin模拟Linux环境。后者的好处是使用比较方便,安装过程也简单,本篇文章是介绍第二种方式Cygwin模拟Linux环境。
准备工作
(1)安装JDK1.6或更高版本,安装时注意,最好不要安装到带有空格的路径名下,例如:Programe Files,否则在配置Hadoop的配置文件时会找不到JDK。
(2)hadoop官网下载hadoop http://hadoop.apache.org/releases.html 。
安装Cygwin
Cygwin是Windows平台下模拟Unix环境的工具,需要在安装Cygwin的基础上安装Hadoop,下载地址:http://www.cygwin.com/ 根据操作系统的需要下载32位或64的安装文件。
一、双击下载好的安装文件,点击下一步进入程序引导安装页,这里有三个选项,选择第一项网络安装:
- 网络安装:通过网络下载并安装软件包
- 下载但不安装:通过网络下载软件包
- 本地安装:是用本地软件包安装
二、选择install from internet
三、选择安装路径
三、选择local Package Directory
四、选择您的Internet连接方式
五、选择合适的安装源,点击下一步
六、这一步比较重要,以下软件包要确保被安装:
在Select Packages界面里,Category展开net,选择如下openssh和openssl两项
如果要在Eclipe上编译Hadoop,需要安装Category为Base下的sed
如果想在Cygwin上直接修改hadoop的配置文件,可以安装Editors下的vim
七、点击“下一步”,等待安装完成。
八、配置环境变量
在“我的电脑”上点击右键,选择菜单中的“属性",点击属性对话框上的高级页签,点击”环境变量"按钮,在系统变量列表里双击“Path”变量,在变量值后输入安装的Cygwin的bin目录,例如:D:\cygwin64\bin
久、安装sshd服务
双击桌面上的Cygwin图标,启动Cygwin,执行ssh-host-config -y命令,执行后,会提示输入密码。
此时输入密码和确认密码,回车。最后出现Host configuration finished.Have fun!表示安装成功。
输入net start sshd,启动服务。或者在系统的服务里找到并启动Cygwin sshd服务。
安装hadoop
前面部分在公司电脑操作,以下安装操作在本机操作,过程不受影响。
下载hadoop
hadoop官网下载地址: http://hadoop.apache.org/releases.html 。
把hadoop压缩包解压到/home/用户名 目录下,文件夹名称更改为hadoop,可以不修改,但后边在执行命令时稍显麻烦。
(1)单机模式配置方式
单机模式不需要配置,这种方式下,Hadoop被认为是一个单独的Java进程,这种方式经常用来调试。
(2)伪分布模式
可以把伪分布模式看作是只有一个节点的集群,在这个集群中,这个节点既是Master,也是Slave,既是NameNode,也是DataNode,既是JobTracker,也是TaskTracker。
伪分布模式只需要修改几个配置文件即可。
配置hadoop-env.sh,记事本打开改文件,设置JAVA_HOME的值为你的JDK安装路径,例如:
JAVA_HOME="D:\javatools\jdk1.6.0"
配置core-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>mapred.child.tmp</name>
<value>/home/u/hadoop/tmp</value>
</property>
</configuration>
配置hdfs-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
配置mapred-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
<property>
<name>mapred.child.tmp</name>
<value>/home/u/hadoop/tmp</value>
</property>
</configuration>
启动hadoop
打开Cgywin窗口,执行cd ~/hadoop命令,进入hadoop文件夹,启动Hadoop前,需要先格式化Hadoop的文件系统HDFS,执行命令:bin/hadoop namenode -format,(注意:namenode要小些,否则如果输入NameNode,会提示错误,找不到或无法加载主类NameNode。)如下图:
输入命令 bin/start-all.sh,启动所有进程。
验证是否成功安装
打开浏览器,输入网址:http://localhost:50030 然后回车,如果能访问则安装成功。访问截图如下:
参考文献:《Hadoop实战》