在 Windows 上安装 Hadoop 教程

一见 2010.1.6 www.hadoopor.com/hadoopor@foxmail.com

1. 安装 JDK

不建议只安装 JRE,而是建议直接安装 JDK,因为安装 JDK 时,可以同时安装 JRE。 MapReduce 程序的编写和 Hadoop 的编译都依赖于 JDK,光 JRE 是不够的。

JRE 下载地址:http://www.java.com/zh_CN/download/manual.jsp

JDK 下载地址:http://java.sun.com/javase/downloads/index.jsp,下载 Java SE 即可。

2. 安装 Cygwin

在安装 Cygwin 之前,得先下载 Cygwin 安装程序 setup.exe。

Cygwin 安 装 程 序 下 载 地 址 : http://www.cygwin.com/setup.exe, 当 然 也 可 以 从 http://www.cygwin.cn/setup.exe下载 Cygwin 安装程序,不过如果在安装过程中,遇到如下图所示的错误,则只能从 http://www.cygwin.com/setup.exe下载,本教程下载的是 Cygwin 1.7.1 版本。

Cygwin 安装程序 setup.exe 的存放目录可随意无要求。当 setup.exe 下载成功后,运行

setup.exe,弹出如下图所示的对话框:

在上图所示的对话框中,直接点击“下一步”,进入如下图所示的对话框:

在上图所示的对话框中,选择“Install from Internet”,然后点击“下一步”,进入如下图 所示对话框:

在上图所示的对话框中,设置 Cygwin 的安装目录,Install For 选 择“All Users”,Default Text File Type 选择“Unix/binary”,然后点击“下一步”,进入如下图所示对话框:

在上图所示的对话框中,设置 Cygwin 安装包存放目录,然后点击“下一步”,进入如 下图所示对话框:

在上图所示的对话框中,选择“Direct Connection”,然后点击“下一步”,进入如下图 所示对话框:

在上图所示的对话框中,点击“下一步”,将进入如下图所示的对话框:

在上图所示的对话框过程中,可能会弹出如下图所示的“Setup Alert”对话框,直接点 击“确定”即可。

进入“Select Packages”对话框后,必须保证“Net Category”下的“OpenSSL”被安装 , 如下图所示:

如果还打算在 eclipse 上编译 Hadoop,则还必须安装“Base Category”下的“sed”,如 下图所示:

另外,还建议将“Editors Category”下的 vim 安装,以方便在 Cygwin 上直接修改配置 文 件 ;“Devel Category”下的 subversion 建议安装,如下图所示:

当完成上述操作后,点击“Select Packages”对话框中“下一步”,进入 Cygwin 安装包 下载过程,如下图所示:

等待安装包下载完毕,当下载完后,会自动进入到如下图所示的对话框:

在上图所示的对话框中,选中“Create icon on Desktop”,以方便直接从桌面上启动 Cygwin,然后点击“完成”按钮。至此,Cgywin 已经安装完,安装目录下的内容如下图所 示:

3. 配置环境变量

需要配置的环境变量包括 PATH 和 JAVA_HOME:JAVA_HOME 指向 JRE 安 装 目 录 ;JDK 的 bin 目录,Cygwin 的 bin 目录,以及 Cygwin 的 usr\bin 目录都必须添加到 PATH 环境变量 中,如下图所示:

4. 安装 sshd 服务

点击桌面上的 Cygwin 图标,启动 Cygwin,执行 ssh-host-config命令,如下图所示:

在执行 ssh-host-config 时,当要求输入 yes/no 时,选择输入 no,如下图所示:

如果是 Cygwin 1.7 之前的版本,则 ssh-host-config 显示界面如下图所示:

当看到“Have fun”时,一般表示 sshd 服务安装成功了,如上图所示。接下来,需要启 动 sshd 服务。

5. 启动 sshd 服务

在桌面上的“我的电脑”图标上单击右键,点击“管理”菜单,进入 Windows 计算机 管理,如下图所示:

在上图所示的对话框中,选中“CYGWINsshd”,弹出右键,并启动 CYGWIN sshd 服 务,成功后,如下图所示:

当 CYGWIN sshd 的状态为“已启动”后,接下来就是配置 ssh 登录。

6. 配置 ssh 登录

执行 ssh-keygen命令生成密钥文件,如下图所示:

在上图所示对话框中,需要输入时,直接按回车键即可,如果不出错,应当是需要三次 按回车键。接下来生成 authorized_keys文件,按下图所示操作即可:

正如上图所示,只需要两步操作,即可生成 authorized_keys文件:

cd ~/..ssh/

cp id_rsa.pub authorized_keys

完成上述操作后,执行 exit命令先退出 Cygwin 窗口,如果不执行这一步操作,下面的 操作可能会遇到错误。接下来,重新运行 Cygwin,执行 ssh localhost 命令,在第一次执行 ssh localhost 时,会有如下图所示的提示,输入 yes,然后回车即可:

如果是 Windows 域用户,这步操作可能会遇到问题,错误信息如下:。

这 个 错 误 暂 无 解 决 办 法 , 问 题 的 解 决 情 况 , 可 关 注 Hadoop 技 术 论 坛 中 的 贴 : http://bbs.hadoopor.com/thread-348-1-1.html(Cygwin1.7.1 版本ssh问题)。否则,如果成功, 执行 who 命令时,可以看到如下图所示的信息:

至此,配置 ssh 登录成功,下面就可以开始安装 hadoop 了。

7. 下载 hadoop 安装包

hadoop 安装包下载地址:

http://labs.xiaonei.com/apache-mirror/hadoop/core/hadoop-0.20.1/hadoop-0.20.1.tar.gz

8. 安装 hadoop

将 hadoop 安装包 hadoop-0.20.1.tar.gz 解压到 D:\hadoop\run 目 录( 以修改成其它目录) 下,如下图所示:

接下来,需要修改 hadoop 的配置文件,它们位于 conf 子目录下,分别是 hadoop-env.sh、 core-site.xml、hdfs-site.xml 和 mapred-site.xml 共四个文件。在 Cygwin 环 境 ,masters 和 slaves 两个文件不需要修改。

Ÿ 修改 hadoop-env.sh

只需要将 JAVA_HOME 修改成 JDK 的安装目录即可,请注意 JDK 必须是 1.6 或 以上 版本 。

Ÿ 修改 core-site.xml

为简化 core-site.xml 配置,将 D:\hadoop\run\src\core 目录下的 core-default.xml 文件复制 到 D:\hadoop\run\conf 目 录 下 , 并 将 core-default.xml 文 件 名 改 成 core-site.xml 。 修 改 fs.default.name 的值,如下所示:

上图中的端口号 8888,可以改成其它未被占用的端口。

Ÿ 修改 hdfs-site.xml

为简化 hdfs-site.xml 配置,将 D:\hadoop\run\src\hdfs 目录下的 hdfs-default.xml 文件复制 到 D:\hadoop\run\conf 目录下,并将 hdfs-default.xml 文件名改成 hdfs-site.xml。不需要再做其 它修改。

Ÿ 修改 mapred-site.xml

为简化 mapred-site.xml 配置,将 D:\hadoop\run\src\mapred 目录下的 mapred-default.xml

文件复制到 D:\hadoop\run\conf 目录下,并将 mapred-default.xml 文件名改成 mapred-site.xml。

上图中的端口号 9999,可以改成其它未被占用的端口。到这里,hadoop 宣告安装完毕, 可以开始体验 hadoop 了!

9. 启动 hadoop

在 Cygwin 中,进入 hadoop 的 bin 目录,运行./start-all.sh 启动 hadoop,在启动成功之后 , 可以执行./hadoop fs -ls /命令,查看 hadoop 的根目录,如下图所示:

如果运行 mapreduce,请参考其它文档,本教程的内容到此结束。

在 Windows 上安装 Hadoop 教程(转)的更多相关文章

  1. 【Jenkins持续集成(二)】Windows上安装Jenkins教程

    一.前言 Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建.测试和部署软件. Jenkins 支持各种运行方式,可通过系统包.Docker 或者通过一个独立的 Java ...

  2. 在Linux上安装Hadoop

    先决条件: Hadoop是用JAVA写的,所以首先要安装Java.在Ubuntu上安装JDK见:http://blog.csdn.net/microfhu/article/details/766739 ...

  3. Windows上安装配置SSH教程(2)——在Windows XP和Windows 10上安装并配置OpenSSH for Windows

    知识点汇总:http://www.cnblogs.com/feipeng8848/p/8559803.html ------------------------ 安装方式有3种: (1)Windows ...

  4. windows上安装Anaconda和python的教程详解

    一提到数字图像处理编程,可能大多数人就会想到matlab,但matlab也有自身的缺点: 1.不开源,价格贵 2.软件容量大.一般3G以上,高版本甚至达5G以上. 3.只能做研究,不易转化成软件. 因 ...

  5. 在Windows上安装虚拟机详细图文教程

    用虚拟机来安装最新的软件,安装最新的系统等等比较保险,可以避免安装不顺利影响自己原来的系统和应用,想尝鲜又担心自己完全更换系统不适应的朋友可以尝试. 虚拟机下载:https://yunpan.cn/c ...

  6. Windows上搭建hadoop开发环境

    前言 Windows下运行Hadoop,通常有两种方式:一种是用VM方式安装一个Linux操作系统,这样基本可以实现全Linux环境的Hadoop运行:另一种是通过Cygwin模拟Linux环境.后者 ...

  7. windows上安装apache python mod_python

    综述:   windows上安装apache python mod_python的例子.教程甚至图解都不少:但作为新手还是会出错,而且一时无法快速排解. 在此笔者将根据自己的实践经验,给出几个需要注意 ...

  8. Ubuntu 12.04上安装Hadoop并运行

    Ubuntu 12.04上安装Hadoop并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 在官网上下载好四个文件 在Ubuntu的/home/w ...

  9. 1.如何在虚拟机ubuntu上安装hadoop多节点分布式集群

    要想深入的学习hadoop数据分析技术,首要的任务是必须要将hadoop集群环境搭建起来,可以将hadoop简化地想象成一个小软件,通过在各个物理节点上安装这个小软件,然后将其运行起来,就是一个had ...

随机推荐

  1. css3动画-animation

    animation驱使一组css style变化到另外一组css style,它可以定义keyframes的集合,指定style的开始和结束状态,它是transition的增强. 配置animatio ...

  2. angular中的$http配置和参数

    依赖:$httpBackend $cacheFactory $rootScope $q $injector 使用:$http(config); 参数: method:字符串,请求方法. url:字符串 ...

  3. Python字符串的encode与decode研究心得——解决乱码问题

    转~Python字符串的encode与decode研究心得——解决乱码问题 为什么Python使用过程中会出现各式各样的乱码问题,明明是中文字符却显示成“/xe4/xb8/xad/xe6/x96/x8 ...

  4. Dom编程(二)

    document是window对象的一个属性,因为使用window对象成员的时候可以省略window.,所以一般直接写document  document的方法: (1)write:向文档中写入内容. ...

  5. 【java基础】接口VS抽象类

    1.至少有一个被abstract修饰的方法,同时修饰类名的类为抽象类,抽象的方法必须被子类覆盖,抽象的类必须被继承,抽象的类可以包含非抽象方法,只能单继承. 2.接口中所有的变量是static fin ...

  6. xamarin mac 基础知识 之 界面

    有两种方式创建界面:代码和xaml

  7. window下Git和github入门

    tip:使用简单的例子来制作一个使用指南过程,默认文件夹为demo.看了3个早晨,写一下留个记录,可能有些不成熟,如有错误欢迎指正. 参考一:http://www.liaoxuefeng.com/wi ...

  8. UVa 103 - Stacking Boxes

    题目大意:矩阵嵌套,不过维数是多维的.有两个个k维的盒子A(a1, a1...ak), B(b1, b2...bk),若能找到(a1...ak)的一个排列使得ai < bi,则盒子A可嵌套在盒子 ...

  9. Html emed 和 object

    <object> 标签用于包含对象,比如图像.音频.视频.Java applets.ActiveX.PDF 以及 Flash. object 的初衷是取代 img 和 applet 元素. ...

  10. fastreport代码转

    2016-07-08 //打印主从表数据 string file = Application.StartupPath @"\MasterDetail.frx"; rptMaster ...