首页 > 代码库 > Hadoop 2.x 安装常见问题FAQ(一) NodeManager 无法启动问题解决

Hadoop 2.x 安装常见问题FAQ(一) NodeManager 无法启动问题解决

一、问题描述

在搭建 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>  

从新启集群,问题解决。

Hadoop 2.x 安装常见问题FAQ(一) NodeManager 无法启动问题解决