пряжа не соблюдает пряжу.nodemanager.resource.cpu-vcores

Я использую Hadoop-2.4.0, и конфигурация моей системы — 24 ядра, 96 ГБ ОЗУ.

Я использую следующие конфиги

mapreduce.map.cpu.vcores=1
yarn.nodemanager.resource.cpu-vcores=10
yarn.scheduler.minimum-allocation-vcores=1
yarn.scheduler.maximum-allocation-vcores=4
yarn.app.mapreduce.am.resource.cpu-vcores=1

yarn.nodemanager.resource.memory-mb=88064
mapreduce.map.memory.mb=3072
mapreduce.map.java.opts=-Xmx2048m

Конфигурации планировщика ресурсов

queue.default.capacity=50
queue.default.maximum_capacity=100
yarn.scheduler.capacity.root.default.user-limit-factor=2

С приведенными выше конфигурациями я ожидаю, что пряжа не будет запускать более 10 картографов на узел, но она запускает 28 картографов на узел. Я делаю что-то неправильно??


person banjara    schedule 29.08.2014    source источник


Ответы (1)


YARN использует больше контейнеров, чем выделенных ядер, поскольку по умолчанию DefaultResourceCalculator. Он считает только память.

public int computeAvailableContainers(Resource available, Resource required) {
// Only consider memory
return available.getMemory() / required.getMemory();
  }

Используйте DominantResourceCalculator, он использует как процессор, так и память.

Установите ниже конфигурацию в емкости-scheduler.xml

yarn.scheduler.capacity.resource-calculator=org.apache.hadoop.yarn.util.resource.DominantResourceCalculator

Подробнее о Калькуляторе основных ресурсов

person banjara    schedule 29.08.2014
comment
Хорошие ответы сопровождают образцы кода пояснениями для будущих читателей. Хотя человек, задающий этот вопрос, может понять ваш ответ, объяснение того, как вы к нему пришли, поможет многим другим. - person Stonz2; 29.08.2014
comment
@Stonz2 Прошу прощения за неполный ответ. Я задал этот вопрос, но ответа не было в течение следующих 4-5 часов, и у него было всего 5 просмотров. Тем временем я также отладил код и нашел ответ. Чтобы помочь другим, я быстро добавил необходимые конфиги, мне пришлось провести больше экспериментов с этим. - person banjara; 29.08.2014
comment
Я потратил несколько часов, пытаясь понять, почему YARN сообщает мне, что на моих узлах доступно отрицательное количество виртуальных ядер! - person jonson; 07.01.2016
comment
Ссылка на DominantResourceCalculator не работает. - person Sai Kiriti Badam; 05.04.2019