Apache spark 如何在中层运行Spark Jobserver';s DC/OS
对于Spark、Spark Jobserver和Mesosphere的DC/OS,我显然有很多不了解的地方。但是我非常喜欢Jobserver项目,也非常喜欢我们的DC/OS集群,并且非常希望它们一起运行 将Docker容器放入marathon文件中不起作用。我想这可能是因为我不知道要传递什么SPARK_MASTER url(我仍然不知道,任何帮助都将不胜感激),但随后我尝试从marathon文件中删除该文件,该文件仍应以本地模式运行项目,但这也不起作用。这让我意识到,除了不知道如何将这个jobserver连接到我的DCOS spark dispatcher之外,我也不知道为什么这个Docker容器会在集群上失败,但在我的本地机器上不会,即使它没有传递任何参数 我的日志显示不多,Docker容器在stdout中执行以下操作后以137的状态退出:Apache spark 如何在中层运行Spark Jobserver';s DC/OS,apache-spark,mesosphere,spark-jobserver,dcos,Apache Spark,Mesosphere,Spark Jobserver,Dcos,对于Spark、Spark Jobserver和Mesosphere的DC/OS,我显然有很多不了解的地方。但是我非常喜欢Jobserver项目,也非常喜欢我们的DC/OS集群,并且非常希望它们一起运行 将Docker容器放入marathon文件中不起作用。我想这可能是因为我不知道要传递什么SPARK_MASTER url(我仍然不知道,任何帮助都将不胜感激),但随后我尝试从marathon文件中删除该文件,该文件仍应以本地模式运行项目,但这也不起作用。这让我意识到,除了不知道如何将这个jobs
LOG_DIR empty; logging will go to /tmp/job-server
当我在本地运行时,这是它继续在我的stdout中运行log4j并告诉我jobserver正在启动之前的最后一个日志。我在stderr中看到了以下内容:
app/server_start.sh: line 54: 15 Killed $SPARK_HOME/bin/spark-submit --class $MAIN --driver-memory $JOBSERVER_MEMORY --conf "spark.executor.extraJavaOptions=$LOGGING_OPTS" --driver-java-options "$GC_OPTS $JAVA_OPTS $LOGGING_OPTS $CONFIG_OVERRIDES" $@ $appdir/spark-job-server.jar $conffile
这似乎表明server_start.sh是从spark jobserver docker运行的,而该脚本出于某种原因正在消亡
我把我的马拉松档案一直剥离到这一步,这仍然给了我同样的错误:
{
"id": "/jobserver",
"cpus": 0.5,
"mem": 100,
"ports": [0],
"instances": 1,
"container": {
"type": "DOCKER",
"docker": {
"image": "velvia/spark-jobserver:0.6.2.mesos-0.28.1.spark-1.6.1"
}
}
}
任何帮助都将不胜感激 在我尝试时,以下内容对我很有用
{
"id": "/spark.jobserver",
"cmd": null,
"cpus": 2,
"mem": 2048,
"disk": 50,
"instances": 1,
"container": {
"type": "DOCKER",
"volumes": [],
"docker": {
"image": "velvia/spark-jobserver:0.6.2.mesos-0.28.1.spark-1.6.1",
"network": "BRIDGE",
"portMappings": [
{
"containerPort": 8090,
"hostPort": 0,
"servicePort": 10001,
"protocol": "tcp",
"labels": {}
}
],
"privileged": false,
"parameters": [],
"forcePullImage": false
}
},
"env": {
"SPARK_MASTER": "mesos://zk://10.29.83.3:2181,10.29.83.4:2181/mesos"
},
"portDefinitions": [
{
"port": 10001,
"protocol": "tcp",
"labels": {}
}
]
}
好的,这里对我有用的实际上只是使用了比Jobserver文档中docker.md中建议的更高的CPU/内存。但事实证明,SPARK_大师根本不适合我。我还是找不到一个有效的。我应该能够通过marathon连接到Spark应用程序运行的Spark Mesos Dispatcher,不是吗?它似乎不起作用。