1

我正在试用Spark 作业服务器- 特别是docker 容器选项。我能够在 spark 本地模式下运行 WordCountExample 应用程序。但是,当我尝试将应用程序指向远程 Spark 主服务器时遇到了异常。

以下是我用来运行 WordCountExample 应用程序的命令:

 1. sudo docker run -d -p 8090:8090 -e SPARK_MASTER=spark://10.501.502.503:7077 velvia/spark-jobserver:0.6.0
 2. sbt job-server-tests/package
 3. curl --data-binary @job-server-tests/target/scala-2.10/job-server-tests_2.10-0.6.2-SNAPSHOT.jar localhost:8090/jars/test
 4. curl -d "input.string = a b c a b see" 'localhost:8090/jobs?appName=test&classPath=spark.jobserver.WordCountExample'

以下是我在运行上述第 4 步时遇到的异常:

{
  "status": "ERROR",
  "result": {
    "message": "Futures timed out after [15 seconds]",
    "errorClass": "java.util.concurrent.TimeoutException",
    "stack": ["scala.concurrent.impl.Promise$DefaultPromise.ready(Promise.scala:219)", "scala.concurrent.impl.Promise$DefaultPromise.result(Promise.scala:223)", "scala.concurrent.Await$$anonfun$result$1.apply(package.scala:107)", "akka.dispatch.MonitorableThreadFactory$AkkaForkJoinWorkerThread$$anon$3.block(ThreadPoolBuilder.scala:169)", "scala.concurrent.forkjoin.ForkJoinPool.managedBlock(ForkJoinPool.java:3640)", "akka.dispatch.MonitorableThreadFactory$AkkaForkJoinWorkerThread.blockOn(ThreadPoolBuilder.scala:167)", "akka.dispatch.BatchingExecutor$Batch.blockOn(BatchingExecutor.scala:101)", "scala.concurrent.Await$.result(package.scala:107)", ...

我使用

cd $SPARK_HOME
./sbin/start-all.sh

远程集群使用Spark version 1.5.1(即预构建的二进制文件spark-1.5.1-bin-hadoop2.6

问题

  1. 关于如何调试它的任何建议?
  2. 有没有我可以查看的日志来找出根本原因?

提前致谢。

4

2 回答 2

0

我对 spark 1.6.1 有同样的问题。我将作业服务器版本更改为最新版本(0.6.2.mesos-0.28.1.spark-1.6.1),它对我有用。

于 2016-05-06T12:15:58.907 回答
0

这可能是网络问题。SJS 服务器应该可以从 Spark 集群访问。

于 2015-12-09T08:16:36.040 回答