配置多队列的容量调度器配置文件capacity-scheduler.xml报错

项目场景:

提示: :


问题描述:配置完capacity-scheduler.xml之后启动集群,resourcemanager报错。

ERROR: Cannot set priority of resourcemanager process 5501

错误信息


原因分析:

一般遇到这种情况,第一反应应该是去查看日志,因为bing得到的信息可能大家的情况并不是都一样,比如我这个小问题基本上就不会有人写出来。


解决方案:

首先查看出错的信息在哪一台服务器上,我的是在hadoop103上,就去这台服务器上找对应的日志

vim /opt/module/hadoop-3.1.3/logs/hadoop-root-resourcemanager-hadoop103.log

从日志中很容易看出来问题,是配置文件中的标签闭合问题,在修改配置文件的时候,不小心删掉了<导致这样的结果。修改好配置文件后,集群还好是不能正常启动。
在这里插入图片描述

2021-06-14 03:30:05,286 INFO org.apache.hadoop.service.AbstractService: Service org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler failed in state INITED
java.lang.IllegalArgumentException: Illegal capacity of 0.4 for children of queue root
        at org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.ParentQueue.setChildQueues(ParentQueue.java:196)
        at org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerQueueManager.parseQueue(CapacitySchedulerQueueManager.java:287)
        at org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerQueueManager.initializeQueues(CapacitySchedulerQueueManager.java:158)
        at org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler.initializeQueues(CapacityScheduler.java:715)
        at org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler.initScheduler(CapacityScheduler.java:360)
        at org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler.serviceInit(CapacityScheduler.java:425)
        at org.apache.hadoop.service.AbstractService.init(AbstractService.java:164)
        at org.apache.hadoop.service.CompositeService.serviceInit(CompositeService.java:108)
        at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager$RMActiveServices.serviceInit(ResourceManager.java:819)
        at org.apache.hadoop.service.AbstractService.init(AbstractService.java:164)
        at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.createAndInitActiveServices(ResourceManager.java:1224)
        at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.serviceInit(ResourceManager.java:318)
        at org.apache.hadoop.service.AbstractService.init(AbstractService.java:164)
        at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.main(ResourceManager.java:1506)
2021-06-14 03:30:05,287 INFO org.apache.hadoop.service.AbstractService: Service RMActiveServices failed in state INITED
java.lang.IllegalArgumentException: Illegal capacity of 0.4 for children of queue root

问题是 Illegal capacity of 0.4 for children of queue root 说明是配置文件中给定的队列容量出现问题,知道队列中的相关配置位置

  <property>
    <name>yarn.scheduler.capacity.root.default.capacity</name>
    <value>40</value>
    <description>Default queue target capacity.</description>
  </property>
  <property>
    <name>yarn.scheduler.capacity.hive.fault.capacity</name>
    <value>60</value>
    <description>Default queue target capacity.</description>
  </property>

首先倒数第四行错误,出现的主要原因 ,修改错位置,并且insert键打开了导致出错。

  <property>
    <name>yarn.scheduler.capacity.root.default.capacity</name>
    <value>40</value>
    <description>Default queue target capacity.</description>
  </property>
  <property>
    <name>yarn.scheduler.capacity.root.hive.capacity</name>
    <value>60</value>
    <description>Default queue target capacity.</description>
  </property>

修改后就OK了

=============== hadoop102 ===============
22448 Jps
21891 DataNode
22377 JobHistoryServer
22190 NodeManager
21727 NameNode
=============== hadoop103 ===============
10181 DataNode
10376 ResourceManager
10700 NodeManager
10975 Jps
=============== hadoop104 ===============
14266 NodeManager
14187 SecondaryNameNode
14411 Jps
14078 DataNode
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值