ResourceManager 无法启动,错误的调度程序设置

ResourceManager will not start, bad scheduler setting

最近 YARN 和更具体的资源管理器将不会启动。搜索 /var/log/hadoop-yarn/yarn/yarn-yarn-resourcemanager-scottvih2sa-92-namenode.log 中的日志我发现错误:

2015-12-02 20:18:13,287 FATAL resourcemanager.ResourceManager (ResourceManager.java:main(1241)) - Error starting ResourceManager
java.lang.IllegalArgumentException: Illegal capacity of -1.0 for node-label=default in queue=root, valid capacity should in range of [0, 100].

我用 Ambari 查看 属性: yarn.scheduler.capacity.root.accessible-node-labels.default.capacity,确实它设置为 -1。我更改此 属性 以及最大容量 属性 并且 YARN/Resource 管理器将启动。

所以我知道问题出在哪里,但不知道为什么。我一直在使用 Ambari 蓝图安装 HDP 2.2.x 好几个月了,直到最近,YARN 一切正常。我没有用蓝图覆盖任何调度程序属性,所以我不认为我做错了什么。

还有其他人看到同样的事情吗?如果其他人没有问题,这可能是我在蓝图中做错了什么吗?如果这是最新版本中的 HDP/Ambari 错误?

我的版本是HDP 2.2.9.0-3393

我遇到了同样的问题,结果证明这是由于 2 个选项被应用时的值超出了它们的范围。

/etc/hadoop/conf/capacity-scheduler.xml
<property>
  <name>yarn.scheduler.capacity.root.accessible-node-labels.default.capacity</name>
  <value>-1</value>
</property>

<property>
  <name>yarn.scheduler.capacity.root.accessible-node-labels.default.maximum-capacity</name>
  <value>-1</value>
</property>

为了解决这个问题,我删除了这些条目并重新启动了 ResourceManager 服务。

注意:我不得不通过 Ambari 进行这些更改,但是,编辑上面的文件似乎没有用,不知道为什么。

以上看起来是 Ambari 中的错误:https://issues.apache.org/jira/browse/AMBARI-13232。感谢 JonasStraub 帮助挖掘这一切。

参考资料

在线程 slm 中指出 https://community.hortonworks.com/questions/6519/resourcemanager-cannot-start.html 这暗示 Ambari 可能与问题有关。我看了看,我正在使用 Ambari 2.1.0。我改用Ambari 2.1.2,问题解决了。