FileNotFoundException при развертывании задания pyspark в кластере YARN - PullRequest
0 голосов
/ 26 февраля 2020

Попытка отправить нижеприведенное приложение Spark test.py в кластер YARN с помощью следующей команды

PYSPARK_PYTHON=./venv/venv/bin/python spark-submit --conf spark.yarn.appMasterEnv.PYSPARK_PYTHON=./venv/venv/bin/python --master yarn --deploy-mode cluster --archives venv#venv test.py

Примечание. Я не использую локальный режим, но пытаюсь использовать python3 .7 site-пакеты под virtualenv, используемые для сборки кода в PyCharm. Virtualenv предоставляет пользовательские пакеты приложений, которые не предоставляются в качестве кластерных служб

. Так выглядит структура проекта Python вместе с содержимым каталога venv

-rw-r--r-- 1 schakrabarti nobody 225908565 Feb 26 13:07 venv.tar.gz
-rw-r--r-- 1 schakrabarti nobody      1313 Feb 26 13:07 test.py
drwxr-xr-x 6 schakrabarti nobody      4096 Feb 26 13:07 venv
drwxr-xr-x 3 schakrabarti nobody      4096 Feb 26 13:07 venv/bin
drwxr-xr-x 3 schakrabarti nobody      4096 Feb 26 13:07 venv/share
-rw-r--r-- 1 schakrabarti nobody        75 Feb 26 13:07 venv/pyvenv.cfg
drwxr-xr-x 2 schakrabarti nobody      4096 Feb 26 13:07 venv/include
drwxr-xr-x 3 schakrabarti nobody      4096 Feb 26 13:07 venv/lib

Получение той же ошибки файла не существует - pyspark.zip (как показано ниже)

java.io.FileNotFoundException: File does not exist: hdfs://hostname-nn1.cluster.domain.com:8020/user/schakrabarti/.sparkStaging/application_1571868585150_999337/pyspark.zip

Пожалуйста, обратитесь к моим комментариям, добавленным на Spark-10795: https://issues.apache.org/jira/browse/SPARK-10795

1 Ответ

0 голосов
/ 26 февраля 2020

Я прошу прощения, если я неправильно понял проблему, но в соответствии с

PYSPARK_PYTHON=./venv/venv/bin/python spark-submit --conf spark.yarn.appMasterEnv.PYSPARK_PYTHON=./venv/venv/bin/python --master yarn --deploy-mode cluster --archives venv#venv test.py

вы используете кластер Yarn, но в вашем файле test.py

#test.py
import json
from pyspark.sql import SparkSession

if __name__ == "__main__":
  spark = SparkSession.builder \
   .appName("Test_App") \
   .master("spark://gwrd352n36.red.ygrid.yahoo.com:41767") \
   .config("spark.ui.port", "4057") \
   .config("spark.executor.memory", "4g") \
   .getOrCreate()

  print(json.dumps(spark.sparkContext.getConf().getAll(), indent=4))

  spark.stop()

вы пытаетесь подключиться к автономной Spark кластер

spark://gwrd352n36.red.ygrid.yahoo.com:41767

Итак, это может быть проблемой

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