中国服务器网

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

在Windows上运行Apache Hadoop 2.1.0

我是Hadoop的新手,遇到了试图在Windows 7机器上运行它的问题。 特别是我对运行Hadoop 2.1.0感兴趣,因为它的发行说明提到在Windows上运行是受支持的。 我知道我可以尝试使用Cygwin在Windows上运行1.x版本,甚至可以使用例如Cloudera准备好的虚拟机,但是这些选项对我来说不太方便。 从http://apache-mirror.rbc.ru/pub/apache/hadoop/common/hadoop-2.1.0-beta/查看了tarball后,我发现确实有一些* .cmd脚本可以在没有Cygwin的情况下运行。 当我格式化HDFS分区时,一切正常,但当我试图运行hdfs namenode守护进程时,我遇到了两个错误:第一,非致命的是,无法findwinutils.exe(它确实没有出现在下载的tarball中)。 我在Apache Hadoop源代码树中find了这个组件的源代码,并用Microsoft SDK和MSbuild编译了它。 感谢详细的错误消息,清楚了将可执行文件放在哪里以满足Hadoop。 但是致命的第二个错误并不包含足够的信息来解决: 13/09/05 10:20:09 FATAL namenode.NameNode: Exception in namenode join java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z at org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Native Method) at org.apache.hadoop.io.nativeio.NativeIO$Windows.access(NativeIO.java:423) at org.apache.hadoop.fs.FileUtil.canWrite(FileUtil.java:952) at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.analyzeStorage(Storage.java:451) at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverStorageDirs(FSImage.java:282) at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:200) … 13/09/05 10:20:09 INFO util.ExitUtil: Exiting with status 1 看起来像别的东西应该被编译。 我将尝试从Maven的源代码构buildHadoop,但不是一个更简单的方法吗? 是不是有一些选项,我不知道,可以禁用本机代码,并使该压缩包在Windows上可用? 谢谢。 更新。 确实是的。 “自制软件”包含一些额外的文件,最重要的是winutils.exe和hadoop.dll。 这个文件的namenode和datanode启动成功。 我想这个问题可以结束。 […]