一、问题描述

在搭建 Hadoop hadoop-2.4.1 集群的最后一步启动集群,在命令窗口并没有报任何错误,但是Slave 节点的 NodeManager进程始终启动不起来。随后查看了后台启动日志yarn-hadoop-nodemanager-Slave1.Hadoop.log,发现如下错误:

  1. 2014-08-01 01:02:17,228 FATAL org.apache.hadoop.yarn.server.nodemanager.containermanager.AuxServices: Failed to initialize mapreduce.shuffle
  2. java.lang.IllegalArgumentException: The ServiceName: mapreduce.shuffle set in yarn.nodemanager.aux-services is invalid.The valid service name should only contain a-zA-Z0-9_ and can not start with numbers
  3. at com.google.common.base.Preconditions.checkArgument(Preconditions.java:88)
  4. at org.apache.hadoop.yarn.server.nodemanager.containermanager.AuxServices.serviceInit(AuxServices.java:98)
  5. at org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)
  6. at org.apache.hadoop.service.CompositeService.serviceInit(CompositeService.java:107)
  7. at org.apache.hadoop.yarn.server.nodemanager.containermanager.ContainerManagerImpl.serviceInit(ContainerManagerImpl.java:221)
  8. at org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)
  9. at org.apache.hadoop.service.CompositeService.serviceInit(CompositeService.java:107)
  10. at org.apache.hadoop.yarn.server.nodemanager.NodeManager.serviceInit(NodeManager.java:188)
  11. at org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)
  12. at org.apache.hadoop.yarn.server.nodemanager.NodeManager.initAndStartNodeManager(NodeManager.java:357)
  13. at org.apache.hadoop.yarn.server.nodemanager.NodeManager.main(NodeManager.java:405)
  14. 2014-08-01 01:02:17,235 INFO org.apache.hadoop.service.AbstractService: Service org.apache.hadoop.yarn.server.nodemanager.containermanager.AuxServices failed in state INITED; cause: java.lang.IllegalArgumentException: The ServiceName: mapreduce.shuffle set in yarn.nodemanager.aux-services is invalid.The valid service name should only contain a-zA-Z0-9_ and can not start with numbers
  15. java.lang.IllegalArgumentException: The ServiceName: mapreduce.shuffle set in yarn.nodemanager.aux-services is invalid<strong>.<span style="font-size:14px;color:#ff0000;">The valid service name should only contain a-zA-Z0-9_ and can not start with numbers</span></strong>
  1. /************************************************************
  2. SHUTDOWN_MSG: Shutting down NodeManager at Slave1.Hadoop/192.168.1.3
  3. ************************************************************/

二、问题解决

发现yarn-site.xml配置不符合要求。修改如下:

原来错误的配置:

  1. <property>
  2. <span style="white-space:pre">    </span><name>yarn.nodemanager.aux-services</name>
  3. <span style="white-space:pre">    </span><value><strong><span style="color:#ff0000;">mapreduce.shuffle</span></strong></value>
  4. </property>

修改后正确配置:

  1. <property>
  2. <span style="white-space:pre">    </span><name>yarn.nodemanager.aux-services</name>
  3. <span style="white-space:pre">    </span><value><span style="color:#ff0000;"><strong>mapreduce_shuffle</strong></span></value>
  4. </property>

从新启集群,问题解决。

04-15 18:41