Искра: ОШИБКА Приложение было убито. Причина: все мастера не отвечают - PullRequest
0 голосов
/ 05 июля 2018

У меня проблема при попытке запустить приложение в кластере искр с именем mymaster (и я проверил имя в файле конфигурации, чтобы быть уверенным).

Я запускаю приложение, используя следующее:

spark-submit --master spark://mymaster:7077 ...

Но дело в том, что я не понял, что мой код имеет следующие строки в драйвере:

val master = parameters.getOrElse("master", "local[*]")
val conf = new SparkConf().setAppName("myApp").setMaster(master)
val sc   = new SparkContext(conf)

Итак, я хотел удалить часть .setMaster(master), потому что я подумал, что «она не нужна». Я сделал это, и я получил следующую ошибку:

ERROR cluster.StandaloneSchedulerBackend: Application has been killed. Reason: All masters are unresponsive! Giving up.
ERROR spark.SparkContext: Error initializing SparkContext.

Здесь https://stackoverflow.com/a/36197126/9759150 говорит:

Свойства, установленные непосредственно в SparkConf, имеют наивысший приоритет, затем флаги передаются в spark-submit или spark-shell, затем параметры в файле spark-defaults.conf.

Но если я попытаюсь поставить только это:

val master = parameters.getOrElse("master", "spark://hadoop-master:7077")
val conf = new SparkConf().setAppName("myApp").setMaster(master)

Я получаю ту же ошибку.

Есть идеи?

1 Ответ

0 голосов
/ 22 июля 2018

Проблема была не в коде.

Рекомендуется не устанавливать мастер, используя .setMaster(aMaster), а использовать спарк-оболочку, используя --master aMaster.

Но сообщение об ошибке было связано с тем, что в тот момент кластер Spark не работал.

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