Я запускаю искрящуюся оболочку следующей командой.
./bin/sparkling-shell --num-executors 4 --executor-memory 4g --master пряжа-клиент
У меня бывает только два исполнителя. Это проблема H2o, YARN или Spark?
Майк
Я запускаю искрящуюся оболочку следующей командой.
./bin/sparkling-shell --num-executors 4 --executor-memory 4g --master пряжа-клиент
У меня бывает только два исполнителя. Это проблема H2o, YARN или Spark?
Майк
У такого поведения может быть несколько причин.
YARN может предоставить вам только количество исполнителей в зависимости от доступных ресурсов (памяти, виртуальных ядер). Если вы просите большего, чем у вас есть ресурсы, он даст вам максимум того, что может.
Это также может быть случай, когда у вас включено динамическое размещение. Это означает, что 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. Это руководство по настройке конфигурации газированной воды.
Куба
Я решил проблему, изменив следующие четыре значения в диспетчере 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