Как динамически использовать номер порта внешнего сервиса shuffle из рабочих свойств Spark? - PullRequest
0 голосов
/ 26 февраля 2020

Я запускаю приложение PySpark в автономном кластере Spark с Dynami c Распределение ресурсов.

У меня есть ситуация, когда Spark External Shuffle Service может работать на разных портах на разных компьютерах, на которых работает Spark Рабочие. Когда Spark Worker запускается, устанавливается переменная среды SPARK_WORKER_OPTS , которая указывает номер порта, на котором должна быть запущена служба внешнего перемешивания.

Итак, я не могу жестко кодировать значение spark.shuffle.service.port при отправке приложения Spark, поскольку оно может отличаться для разных работников. Я хочу, чтобы это было забрано Исполнителем от Рабочего, на котором он работает.

К сожалению, я не нашел способа включить это. Если при отправке приложения я не устанавливаю значение spark.shuffle.service.port , исполнитель пытается подключиться к внешнему сервису shuffle, работающему через порт 7337, который не работает на некоторых машинах, где порт отличается.

Есть ли способ решить эту проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...