GCP Dataproc - Несогласованные метрики контейнера - пользовательский интерфейс YARN и пользовательский интерфейс Spark - PullRequest
0 голосов
/ 25 октября 2018

У меня есть кластер GCP Dataproc с 50 рабочими (n1-standard-16 16 VCores 64 ГБ ОЗУ).

В кластере имеется планировщик емкости с калькулятором ресурсов по умолчанию.

Моя работа Spark имеет следующую конфигурацию

  • spark.executor.cores = 5
  • spark.executor.memory = 18G
  • spark.yarn.executor.получать применяется.Для перекрестной проверки я посмотрел на Spark UI и, к моему удивлению, каждый исполнитель показал 5 ядер.Это немного сбивает с толку.

    Кроме того, время завершения задания (26 минут) также указывает на то, что эти 5 ядер действительно vcores, а не только 5 потоков внутри 1 ядра (это только мое понимание, я мог бы быть полностьюздесь не так).

    Может ли кто-нибудь помочь мне понять это?

    Spark UI YARN UI

1 Ответ

0 голосов
/ 25 октября 2018

Известно, что сообщенное YARN число vCores является неправильным;это известная проблема, связанная с планировщиком емкости при использовании со Spark, но это только косметическая проблема, поскольку она работает так, как задумано в Dataproc, и предпочитает только бинарную упаковку на основе памяти и допускает переподписку vCores, если желательно для высокихРаботаДаже если YARN настроен на включение ядер в бинарную упаковку, он все равно не обеспечивает изоляцию процессора.Количество ядер на каждого исполнителя, сообщенное в пользовательском интерфейсе Spark, является правильным для доверия.

См. Этот связанный ответ StackOverflow: Dataproc устанавливает число vcores на контейнер исполнителя

...