0

I start the sparkling-shell with the following command.

./bin/sparkling-shell --num-executors 4 --executor-memory 4g --master yarn-client

I only ever get two executors. Is this an H2o problem, YARN problem, or Spark problem?

Mike

4

2 回答 2

1

这种行为可能有多种原因。

YARN 只能根据可用资源(内存、vcores)为您提供执行器的数量。如果你要求更多,那么你就有资源,它会给你最大的能力。

当您启用了动态分配时,也可能出现这种情况。这意味着 Spark 将在需要时创建新的执行器。

为了解决 Sparkling Water 中的一些技术问题,我们需要在应用程序开始时通过创建人工计算并尝试利用整个集群来发现所有可用的执行器。这也可能会减少执行者的数量。

我建议查看https://github.com/h2oai/sparkling-water/blob/master/doc/tutorials/backends.rst,您可以在其中阅读有关上述段落的更多信息以及如何使用所谓的外部闪闪发光来解决它水后端。

您也可以在这里查看https://github.com/h2oai/sparkling-water/blob/master/doc/configuration/internal_backend_tuning.rst。这是用于调整配置的苏打水指南。

库巴

于 2017-11-08T12:00:40.677 回答
0

我通过更改 cloudera manager 中的以下四个值解决了这个问题

Setting                                  Value
yarn.scheduler.maximum-allocation-vcores 8  
yarn.nodemanager.resource.cpu-vcores     4 
yarn.nodemanager.resource.cpu-vcores     4 
yarn.scheduler.maximum-allocation-mb     16 GB 
于 2016-05-16T23:58:25.167 回答