【问题标题】:DSE 4.6 to DSE 4.7 Failed to find Spark assemblyDSE 4.6 到 DSE 4.7 找不到 Spark 程序集
【发布时间】:2015-08-09 06:40:37
【问题描述】:

在将 DSE 4.6 升级到 4.7 后,job-server-0.5.0 出现问题。如果我运行 server_start.sh 我会得到错误 “在 /usr/share/dse/spark/assembly/target/scala-2.10 中找不到 Spark 程序集失败 您需要在运行此程序之前构建 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 我会得到同样的错误。

【问题讨论】:

    标签: apache-spark datastax datastax-enterprise spark-jobserver


    【解决方案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

    【讨论】:

    • Thx,现在它在 DSE 4.7 中工作,但在 DSE 4.6 中我遇到了问题 ;) 你能告诉我,我现在如何停止作业服务器? server_stop.sh 不会停止服务器。我应该通过例如杀死它吗? ./bin/spark-class org.apache.spark.deploy.Client kill ?
    • 杀死客户对我来说听起来不错。真正的解决方案是修改脚本以适应您使用的任何版本。我正在考虑以后有时间做一个更好的修改。 Dse 4.6 使用 Spark 1.1.0 并且提交工具的工作方式不同,所以我希望它需要不同的命令顺序才能启动。
    猜你喜欢
    • 2015-08-30
    • 2015-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-11
    • 2015-08-24
    • 2015-10-15
    • 1970-01-01
    相关资源
    最近更新 更多