Windows平台上安装Hadoop-0.20.203.0版本方法


Windows 平台上安装 Hadoop-0.20.203.0 版本方法 目的 这篇文档的目的旨在说明在 Windows 平台上、利用 Cygwin 模拟 Linux 环境下,完成单机上 Hadoop-0.20.203.0 版的安装与使用。同时也旨在解决你在安装 hadoop 过程中出现 JAVA_HOME is not set 或是 bin/java No such file or directory 错误的问题。 先决条件 1 支持平台。 Win32 平台是作为开发平台支持的。由于分布式操作尚未在 Win32 平台上充分测试, 所以还不作为一个生产平台被支持。 2 所需软件 2.1 JavaTM1.6.x,必须安装且版本要为 1.6 及以上,建议选择 Sun 公司发行的 Java 版本。 2.2 Cygwin,提供 Shell 支持。本文使用最新版 1.7.x,要选择安装 Openssh、Openssl 等。 2.3 Hadoop-0.20.203.0 最新的稳定版。 安装支持软件 1 安装 Java 安装下载的 Java 1.6.x,使用 jdk-6u27-windows-i586.exe 安装,安装路径比如为: C:\Java\jdk1.6.0_27。安装完成后,配置环境变量如下: 设置 JAVA_HOME 变量值为:C:\Java\jdk1.6.0_27 设置 CLASSPATH 变量值为: .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar 向 path 变量中添加路径,添加%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin 2 安装 Cygwin 安装 Cygwin,可以从官网上下载最新的 cygwin1.7.9-1 进行安装。本人把下载的 setup.exe 放在 C:\Cygwin-localPackage 文件夹中,该文件用于存储安装选项网络下载的源文件,双击 setup.exe 进行安装。安装流程如下: 图 1 图 2 注:图 2 中选择 install from internet 图 3 图 4 注:图 3 确定安装路径如 C:\cygwin;图 4 选择下载文件存放的路径如 C:\Cygwin-localPackage 图 5 图 6 图 6 选择下载安装文件的站点,本文选择默认的第一个站点。 图 7 图 8 图 7 选择你要安装的软件,基本功能已经默认选择,但请添加 Net 类中的 Openssh 和 Openssl,如上图 8。如果你想使用 cygwin 中 gcc/g++,gfortran 之类的编译器及其他工具, 可以选择安装。 选择好要安装的包后,直接下一步下一步可完成安装 Cygwin 环境。 3 配置 Cygwin 将 cygwin 安装路径添加到 windows 的 path 变量中,其中将 C:\cygwin\bin; C:\cygwin\usr\sbin; C:\cygwin\usr\i686-pc-cygwin\bin 添加到 path 变量中。 另外,在 Cygwin 中找不到某个工具时可添加安装,直接双击之前的 setup.exe 即可。 4 无密码 ssh 配置 4.1 安装 ssh 服务 进入Cygwin中,输入ssh命令后回车,确认是否安装了ssh。然后输入命令:ssh-host-config 回车,第一次询问时回答 no,然后 yes 下去,直到要求输入 The value of CYGWIN for daemon, 此时输入 ntsec。到此打开系统服务,在 windows 系统服务中会看到 Cygwin sshd 服务,启 动服务。退出 cygwin。具体操作如下图: 图 9 图 10 图 11 图 12 图 13 4.2 无密码 ssh 配置 再次登录 cygwin,输入命令:ssh-keygen 回车,一直 yes,会在 cygwin 环境的个人用户目录 下生成.ssh 文件夹,里面包含口令文件。使用命令:cd .ssh 回车,切换到.ssh 目录,使用 ls 命令可以看到当前目录下的文件。再使用命令:cat id_rsa.pub >> authorized_keys 回车即可完 成无密码 ssh 的配置。 4.3 无密码 ssh 登录 再次使用命令 ssh localhost 回车,可以不用密码登录 ssh 了。 下载和配置 Hadoop 1 下载 Hadoop 软件 到 hadoop 官网上下载 hadoop-0.20.203.0 版本,当然也可以到这个网址下载 http://archive.apache.org/dist/hadoop/core/ ,将下载的文件解压,本文将解压包放到了 C:\cygwin\home\Administrator\hadoop 目录下,这个目录也是 hadoop 的主目录。 2 配置 Hadoop 运行的文件 这一步也是最关键的一步,哥在这里花了相当的时间,这一点问题的解决也是我撰写本文 的主要目的。 2.1 编辑 conf/hadoop-env.sh 文件 编辑 hadoop 目录下的 conf/hadoop-env.sh 文件,至少需要将 JAVA_HOME 设置为 Java 安装 根路径。先将原来的# export JAVA_HOME=/usr/lib/j2sdk1.5-sun 行的#符号去掉,#为注释符, 然后将 JAVA_HOME 改为你的 jdk 安装的路径。这里关键的一点是在 cygwin 环境下 windows 的 c:路径已经被映射为/cygdrive,所以 JAVA_HOME 的路径就为/cygdrive/c/Java/jdk1.6.0_27 具体该行修改为:export JAVA_HOME=/cygdrive/c/Java/jdk1.6.0_27 2.2 添加 HADOOP_HOME 变量值到 PATH 中 另外本文还做了如下修改在# Command specific options appended to HADOOP_OPTS when specified 行的后面添加了 hadoop 的主工作目录,并将该目录添加到了 Cygwin 的 path 变量 中。 添加的两行为: export HADOOP_HOME=/cygdrive/c/cygwin/home/Administrator/hadoop export PATH=$PATH:$HADOOP_HOME/bin 具体的 hadoop 主目录与你的放置 hadoop 软件位置所决定。 2.3 配置 conf/core-site.xml、hdfs-site.xml 和 mapred-site.xml 文件 2.3.1 向 core-site.xml 文件中添加内容后如下: hadoop.tmp.dir d:\tmp //没有这个目录要自己创建 A base for other temoporary directoies. fs.default.name hdfs://localhost:9000 The name of the default file system.A url 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. 2.3.2 向 hdfs-site.xml 文件添加内容后如下: dfs.replication 1 2.3.3 向 mapred-site.xml 文件添加内容后如下: mapred.job.tracker localhost:9001 3 尝试运行 Hadoop 尝试运行 Hadoop。在 cygwin 中,使用 cd 命令切换当前工作目录到 Hadoop 的主目录下, 运行命令:bin/hadoop namenode –format 回车。幸运的话程序会运行并格式化分布式文件系 统。如下图所示:(撰写本文是已经执行过格式化命令,所示图可能与第一次之行格式化有 些不同) 4 可能出现的错误及如何解决 4.1 可能错误 如果上步试运行操作没有出现:bin/java No such file or directory 的提示,那么你的单 节点上部署安装Hadoop已经成功了,然而,有些事情并非如此顺利。而我在安装过程中确 实出现了bin/java No such file or directory 的提示,当时始终认为是conf/hadoop-env.sh脚本文 件中的JAVA_HOME变量值设置错误,曾尝试无数次把JAVA_HOME变量值设置为 /cygdrive/c/Java/jdk1.6.0_27或是"C:\Java\jdk1.6.0_27"都不能解决问题。 但是,到底是什么原因导致这个错误出现,最终不能启动运行hadoop? 4.2 解决方法 答案是修改后的conf/hadoop-env.sh脚本文件中的字符编码是windows的而不是unix式的,导致 配置文件中的JAVA_HOME变量无效。 解决方法是在hadoop目录下,运行命令:dos2unix conf/hadoop-env.sh 命令,将hadoop-env.sh 文件中的windows字符转为unix字符即可。 4.3 运行测试 重新运行命令 bin/hadoop namenode –format 回车,到此 ok,完成安装。 启动 hadoop 软件 1 启动 Hadoop 软件 在 cygwin 用户目录下,输入命令 cd hadoop 回车,将工作目录切换到 hadoop 主目录下。输 入命令 bin/start-all.sh 回车,启动 hadoop 回车。如图所示: 2 浏览查看 namenode 节点分布式文件系统使用状况。 在浏览器中输入:http://localhost:50070 浏览 NameNode 和 JobTracker 的网络接口,它们的地址默认为: •NameNode : http://localhost:50070/ •JobTracker :http://localhost:50030/ 3 关闭 Hadoop 输入命令 bin/stop-all.sh 回车,关闭。 作者:石锋
还剩8页未读

继续阅读

下载pdf到电脑,查找使用更方便

pdf的实际排版效果,会与网站的显示效果略有不同!!

需要 15 金币 [ 分享pdf获得金币 ] 3 人已下载

下载pdf

pdf贡献者

tiansha

贡献于2012-01-11

下载需要 15 金币 [金币充值 ]
亲,您也可以通过 分享原创pdf 来获得金币奖励!
下载pdf