【发布时间】:2016-09-09 14:51:30
【问题描述】:
我们正在努力在 spark 集群上启动 spark-jobserver。
要部署服务器,我们遵循 github.com/spark-jobserver/spark-jobserver#deployment 上的文档。我们通过运行./server_deploy.sh local 进行部署。
我已将我们的 local.conf 和 local.sh 上传到 pastebin -
local.conf - http://pastebin.com/DWJEuX11
local.sh - http://pastebin.com/S2hjXb8J
然后我们从 spark 根文件夹启动我们的集群 master 和 worker 运行以下命令
./sbin/master-start.sh
./bin/spark-class org.apache.spark.deploy.worker.Worker spark://IP:PORT
检查 localhost:8080 似乎工作正常。
然后我们通过运行./server_start.sh --master spark://IP:PORT --deploy-mode cluster 启动服务器,再次检查 localhost:8080 我们可以看到服务器已启动并在工作线程的一个核心上运行。检查 localhost:8090 我们可以看到 spark-jobserver 也已启动并运行。
然后我们创建一个自定义上下文,其中包括 CassandraSQLContext (github.com/datastax/spark-cassandra-connector/blob/master/spark-cassandra-connector/src/main/scala/org/apache/spark/sql/cassandra /CassandraSQLContext.scala) 通过运行
curl -d "" 'localhost:8090/contexts/cassandra-context?context-factory=spark.jobserver.context.CassandraContextFactory&num-cpu-cores=4&memory-per-node=512m'
然后我们收到以下错误
{
"status": "CONTEXT INIT ERROR",
"result": {
"errorClass": "java.lang.NoClassDefFoundError",
"cause": "org.apache.spark.sql.cassandra.CassandraSQLContext",
"stack": ["java.net.URLClassLoader.findClass(URLClassLoader.java:381)"...
}
}
我们已尝试通过在 local.conf 中包含依赖项 jar 来修复此错误
dependent-jar-uris = ["file:///path/to/jar.jar"]
这给出了同样的错误。
我们还尝试将整个 spark-cassandra-connector src 文件夹包含在我们的 job-server-extras 中,这在运行 ./server_deploy.sh local 时几乎在每个文件上都给出了错误 File line length exceeds 110 characters。
我们将不胜感激。
【问题讨论】:
标签: scala apache-spark cassandra spark-jobserver