hadoop2.7.1java.lang.IllegalArgumentException: The ServiceName: mapreduce.shuffle set in yarn.nodema

hadoop启动后用jps查看slave1显示有nodemanager
等一下再看 就没有改进程
查看日志显示如下:

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
        at com.google.common.base.Preconditions.checkArgument(Preconditions.java:88)
        at org.apache.hadoop.yarn.server.nodemanager.containermanager.AuxServices.serviceInit(AuxServices.java:114)
        at org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)
        at org.apache.hadoop.service.CompositeService.serviceInit(CompositeService.java:107)
        at org.apache.hadoop.yarn.server.nodemanager.containermanager.ContainerManagerImpl.serviceInit(ContainerManagerImpl.java:237)
        at org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)
        at org.apache.hadoop.service.CompositeService.serviceInit(CompositeService.java:107)
        at org.apache.hadoop.yarn.server.nodemanager.NodeManager.serviceInit(NodeManager.java:255)
        at org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)
        at org.apache.hadoop.yarn.server.nodemanager.NodeManager.initAndStartNodeManager(NodeManager.java:480)
        at org.apache.hadoop.yarn.server.nodemanager.NodeManager.main(NodeManager.java:527)

查了很多资料,结果是配置文件yarn.site.xml参数配置的问题

正确如下:
<property>
<name>yarn.nodemanager.aux-services.mapreduce_shuffle.class</name>
<value>mapreduce_shuffle</value>
 <description>shuffle service that needs to be set for Map Reduce to run </description>
  </property> 
————————————————
版权声明:本文为CSDN博主「shawn_zhu1」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_26479655/article/details/51871255

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个错误通常是由于程序无法解析主机名“hadoop”而引起的。这可能是因为主机名无效或DNS配置不正确。要解决此问题,可以尝试以下几个步骤: 1.检查主机名是否正确。可以尝试使用ping命令来测试主机名是否可用。例如,在命令行中输入“ping hadoop”并按Enter键。如果主机名无效,则会显示“无法解析主机名”的错误消息。 2.检查DNS配置是否正确。可以尝试使用nslookup命令来测试DNS是否正确配置。例如,在命令行中输入“nslookup hadoop”并按Enter键。如果DNS配置不正确,则会显示“无法解析主机名”的错误消息。 3.检查网络连接是否正常。可以尝试使用telnet命令测试网络连接是否正常。例如,在命令行中输入“telnet hadoop 80”并按Enter键。如果网络连接不正常,则会显示“无法连接到主机”的错误消息。 以下是一个Java程序中出现类似错误的例子: ```java import java.util.Date; public class Example { public static void main(String[] args) { Date date = new Date(); String str = "2022-01-01"; if (date > str) { System.out.println("date is later than str"); } } } ``` 在这个例子中,程序试图比较一个Date类型的变量和一个String类型的变量,这会导致“invalid comparison”错误。要解决这个问题,可以将String类型的变量转换为Date类型的变量,例如: ```java import java.text.SimpleDateFormat; import java.util.Date; public class Example { public static void main(String[] args) throws Exception { Date date = new Date(); String str = "2022-01-01"; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date date2 = sdf.parse(str); if (date.compareTo(date2) > 0) { System.out.println("date is later than str"); } } } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值