Spark on Yarn с пользовательским Python не работает в режиме клиента - PullRequest
2 голосов
/ 08 октября 2019

Мы использовали нашу собственную среду Python (conda) с spark-submityarn в качестве мастера), как описано, например, здесь . Мы делаем это, потому что Python по умолчанию в кластере все еще Python2.

Несколько недель назад это перестало работать - но интересно только в режиме client - режим cluster все еще работает.

РАБОТАЕТ:

spark-submit --master yarn --deploy-mode cluster \
    --conf spark.yarn.appMasterEnv.PYSPARK_PYTHON=./anaconda3/venv/bin/python \
    --conf spark.yarn.appMasterEnv.PYSPARK_DRIVER_PYTHON=./anaconda3/venv/bin/python \
    --archives /path/to/venv.tar.gz#anaconda3 \
    my_spark_program.py

НЕ работает:

PYSPARK_DRIVER_PYTHON=/path/to/venv/bin/python \
spark-submit --master yarn --deploy-mode client \
    --conf spark.yarn.appMasterEnv.PYSPARK_PYTHON=./anaconda3/venv/bin/python \
    --conf spark.yarn.appMasterEnv.PYSPARK_DRIVER_PYTHON=./anaconda3/venv/bin/python \
    --archives /path/to/venv.tar.gz#anaconda3 \
    my_spark_program.py

Аналогично, запуск интерактивной оболочки PySpark (с указанными выше параметрами) не работает.

выдается ошибка: версии Python в драйвере и рабочем не совпадают - драйвер, как сообщается, имеет версию Python 3.6, в то время как рабочие имеют версию Python 2.7. Таким образом, похоже, что рабочая среда неправильно настроена в --deploy-mode client?

У нас есть версия Spark 2.3.0 и версия Yarn (Hadoop) 2.6.0.

Любые указатели относительнопочему это могло перестать работать?

...