我按照以下方式启动了调度程序,从日志中可以看到启动成功
./sbin/start-mesos-dispatcher.sh --master mesos://10.0.0.6:5050
在端口7078上激活了休息服务器
我将作业提交给调度员如下
./bin/spark-submit \
--class com.ibm.cds.spark.samples.HelloSpark \
--master mesos://10.0.0.6:7078 \
--deploy-mode cluster \
--verbose \
https://github.com/../helloSpark.jar
在spark slave上,我在mesos代理沙箱中遇到以下错误 - stderr。
17/11/22 09:22:06 INFO RestSubmissionClient: Submitting a request to launch an application in mesos://10.0.0.6:5050.
Exception in thread "main" org.apache.spark.deploy.rest.SubmitRestProtocolException: Malformed response received from server
at org.apache.spark.deploy.rest.RestSubmissionClient.readResponse(RestSubmissionClient.scala:268)
at org.apache.spark.deploy.rest.RestSubmissionClient.org$apache$spark$deploy$rest$RestSubmissionClient$$postJson(RestSubmissionClient.s
问题: 为什么执行者向mesos-master提交启动应用程序?在spark-submit(上图)中,我清楚地给出了火花主地址(在端口7078)。为什么不采取这种做法?
如何避免此错误?
使用mesos版本1.4.1
答案 0 :(得分:0)
删除了spark-defaults.conf中的所有条目,但下面除外。 spark.eventLog.enabled true
现在工作正常,这意味着,我没有收到此错误。
看起来好像在spark-defaults.conf中调用了spark.master导致了这个问题。