От DSE 4.6 до DSE 4.7 Не удалось найти сборку Spark

У меня проблема с job-server-0.5.0 после обновления DSE 4.6 до 4.7. Если я запущу server_start.sh, я получу ошибку «Не удалось найти сборку Spark в /usr/share/dse/spark/assembly/target/scala-2.10. Перед запуском этой программы необходимо собрать Spark».

Я нашел в /usr/share/dse/spark/bin/compute-classpath.sh

этот код вызывает ошибку

for f in ${assembly_folder}/spark-assembly*hadoop*.jar; do
  if [[ ! -e "$f" ]]; then
    echo "Failed to find Spark assembly in $assembly_folder" 1>&2
    echo "You need to build Spark before running this program." 1>&2
    exit 1
  fi
  ASSEMBLY_JAR="$f"
  num_jars=$((num_jars+1))
done

Если я запущу /usr/share/dse/spark/bin/spark-submit, я получу ту же ошибку.


person Filip Forszpaniak    schedule 27.05.2015    source источник


Ответы (1)


Если вы используете DSE, вам, скорее всего, следует запускать spark-jobserver, не нажимая путь вычислений к классам. Вы можете попробовать изменить сценарий запуска, чтобы использовать dse spark-submit, как в следующем примере.

# job server jar needs to appear first so its deps take higher priority
# need to explicitly include app dir in classpath so logging configs can be found
#CLASSPATH="$appdir:$appdir/spark-job-server.jar:$($SPARK_HOME/bin/compute-classpath.sh)"

#exec java -cp $CLASSPATH $GC_OPTS $JAVA_OPTS $LOGGING_OPTS $CONFIG_OVERRIDES $MAIN $conffile 2>&1 &
dse spark-submit --class $MAIN $appdir/spark-job-server.jar --driver-java-options "$GC_OPTS $JAVA_OPTS $LOGGING_OPTS" $conffile 2>&1 &

https://github.com/spark-jobserver/spark-jobserver/blob/f5406a50406c59f26c878d7cee7334d6b9203312/bin/server_start.sh

person RussS    schedule 27.05.2015
comment
Спасибо, теперь это работает в DSE 4.7, но в DSE 4.6 у меня были проблемы с этим ;) Не могли бы вы сказать мне, как я могу теперь остановить сервер заданий? server_stop.sh не останавливает сервер. Должен ли я убить его, например. ./bin/spark-class org.apache.spark.deploy.Client kill ‹driverId›? - person Filip Forszpaniak; 28.05.2015
comment
Убить клиента звучит нормально для меня. Настоящим решением будет еще немного изменить сценарий, чтобы он соответствовал той версии, которую вы используете. Я подумываю сделать лучшую модификацию позже, когда у меня будет время. Dse 4.6 использует Spark 1.1.0, и инструмент отправки работает по-другому, поэтому я ожидаю, что для запуска потребуется другой порядок команд. - person RussS; 28.05.2015