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