H2o Количество исполнителей не работает

Я запускаю sparkling-shell с помощью следующей команды.

./bin/sparkling-shell --num-executors 4 --executor-memory 4g - мастер пряжи-клиента

У меня только два исполнителя. Это проблема H2o, проблема YARN, или проблема Spark?

Майк

2 ответа

Решение

Я преодолел проблему, изменив следующие четыре значения в менеджере Cloudera

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 

Причин такого поведения может быть несколько.

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. Это руководство по газированной воде для настройки конфигурации.

Kuba

Другие вопросы по тегам