Создавая очереди на лету
Я хочу запустить X количество заданий MR в цикле, каждое из которых будет отправлено в случайную очередь, которая создается на лету.
Пример: -D mapred.queuename= имя root.random.
Я хочу пройти через это столько раз, сколько необходимо, и это должно создать столько же очередей в YARN на лету.
Есть ли способ сделать это?
1 ответ
Это можно сделать, если ваша YARN настроена на использование FairScheduler. Fair Scheduler должен быть настроен на динамическое создание очередей через свойство yarn.scheduler.fair.allow-undeclared-pools
установлен в true
(по умолчанию), ИЛИ, если конфигурация Fair Scheduler определяет политику размещения в очереди, "specified"
правило политики должно иметь "create"
атрибут установлен в "true"
, что-то вроде этого:
...
<queuePlacementPolicy>
<rule name="specified" create="true"/>
<rule name="default" />
</queuePlacementPolicy>
...
Тем не менее, "вы могли бы" не обязательно означает "вы должны", и определенно не под root
,