我在伪分布式模式下在Windows 64上运行hadoop 2.7.1,无法运行yarn。每当我尝试通过yarn resourcemanager
启动它时,我都会得到以下输出:
The system cannot find the batch label specified - resourcemanager
Usage: java [-options] class [args...]
(to execute a class)
or java [-options] -jar jarfile [args...]
(to execute a jar file)
where options include:
-d32 use a 32-bit data model if available
-d64 use a 64-bit data model if available
-server to select the "server" VM
The default VM is server.
-cp <class search path of directories and zip/jar files>
-classpath <class search path of directories and zip/jar files>
A ; separated list of directories, JAR archives,
and ZIP archives to search for class files.
-D<name>=<value>
set a system property
-verbose:[class|gc|jni]
enable verbose output
-version print product version and exit
-version:<value>
Warning: this feature is deprecated and will be removed
in a future release.
require the specified version to run
-showversion print product version and continue
-jre-restrict-search | -no-jre-restrict-search
Warning: this feature is deprecated and will be removed
in a future release.
include/exclude user private JREs in the version search
-? -help print this help message
-X print help on non-standard options
-ea[:<packagename>...|:<classname>]
-enableassertions[:<packagename>...|:<classname>]
enable assertions with specified granularity
-da[:<packagename>...|:<classname>]
-disableassertions[:<packagename>...|:<classname>]
disable assertions with specified granularity
-esa | -enablesystemassertions
enable system assertions
-dsa | -disablesystemassertions
disable system assertions
-agentlib:<libname>[=<options>]
load native agent library <libname>, e.g. -agentlib:hprof
see also, -agentlib:jdwp=help and -agentlib:hprof=help
-agentpath:<pathname>[=<options>]
load native agent library by full pathname
-javaagent:<jarpath>[=<options>]
load Java programming language agent, see java.lang.instrument
-splash:<imagepath>
show splash screen with specified image
See http://www.oracle.com/technetwork/java/javase/documentation/index.html for more details.
我想这可能是我当前的纱线网站.xml的问题,但找不到它是什么:
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.application.classpath</name>
<value>
%HADOOP_HOME%etchadoop,
%HADOOP_HOME%sharehadoopcommon*,
%HADOOP_HOME%sharehadoopcommonlib*,
%HADOOP_HOME%sharehadoopmapreduce*,
%HADOOP_HOME%sharehadoopmapreducelib*,
%HADOOP_HOME%sharehadoophdfs*,
%HADOOP_HOME%sharehadoophdfslib*,
%HADOOP_HOME%sharehadoopyarn*,
%HADOOP_HOME%sharehadoopyarnlib*
</value>
</property>
</configuration>
在我设法在互联网上找到的关于这个问题的唯一一件事之后,我尝试编辑纱线网站.xml在记事本++中将LF更改为CRLF,但这根本没有帮助。
尝试编辑 yarn.cmd 在记事本++中将 LF 更改为 CRLF 位于
...\Hadoop-2.7.1\bin\yarn.cmd
我实际上设法通过下载一组新的 wintools(无法真正编译它们(来解决此问题,遵循本指南:http://toodey.com/2015/08/10/hadoop-installation-on-windows-without-cygwin-in-10-mints/
我刚刚下载了位于 https://github.com/sardetushar/hadooponwindows/archive/master.zip 的zip,并替换了Hadoop家中的/bin目录。
请参阅 Hadoop 2.3.0 over Windows 2008 R2 x64 关于 NodeManager
我遇到了同样的问题,并按照以下步骤解决了它。
-
在/hadoop/etc/hadoop 和/hadoop/bin 目录中,在记事本++中打开 yarn.xml、yarn.sh 和 yarn.cmd 文件,并使用 Edit->EOL 转换中的 EOL 选项,从 Unix/OSX 格式转换为 Windows 格式。
-
在/hadoop/etc/hadoop 目录中,打开 mapred-env.cmd、yarn-env.cmd 和 hadoop-env.cmd 并添加相应的JAVA_HOME路径。