Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 如何启用Spark mesos docker executor?_Apache Spark_Docker_Mesos - Fatal编程技术网

Apache spark 如何启用Spark mesos docker executor?

Apache spark 如何启用Spark mesos docker executor?,apache-spark,docker,mesos,Apache Spark,Docker,Mesos,我正在研究Mesos和Spark之间的集成。现在,我可以在docker中启动SlaveMosDispatcher;我还喜欢在Mesos docker经营Spark executor。我为它做了以下配置,但我得到了一个错误;有什么建议吗 配置: Spark:conf/Spark-defaults.conf spark.mesos.executor.docker.image ubuntu spark.mesos.executor.docker.volumes /usr/bin

我正在研究Mesos和Spark之间的集成。现在,我可以在docker中启动SlaveMosDispatcher;我还喜欢在Mesos docker经营Spark executor。我为它做了以下配置,但我得到了一个错误;有什么建议吗

配置:

Spark:conf/Spark-defaults.conf

spark.mesos.executor.docker.image        ubuntu
spark.mesos.executor.docker.volumes      /usr/bin:/usr/bin,/usr/local/lib:/usr/local/lib,/usr/lib:/usr/lib,/lib:/lib,/home/test/workshop/spark:/root/spark
spark.mesos.executor.home                /root/spark
#spark.executorEnv.SPARK_HOME             /root/spark
spark.executorEnv.MESOS_NATIVE_LIBRARY   /usr/local/lib
注意:spark安装在/home/test/workshop/spark中,并且安装了所有依赖项

将KPI提交给调度程序后,驱动程序作业将启动,但失败。错误消息是:

I1015 11:10:29.488456 18697 exec.cpp:134] Version: 0.26.0
I1015 11:10:29.506619 18699 exec.cpp:208] Executor registered on slave b7e24114-7585-40bc-879b-6a1188cb65b6-S1
WARNING: Your kernel does not support swap limit capabilities, memory limited without swap.
/bin/sh: 1: ./bin/spark-submit: not found

有人知道如何在docker中映射/设置spark home吗?

我认为您在这里看到的问题是由于容器的当前工作目录没有安装spark。当您指定Spark与Mesos一起使用的docker映像时,它希望容器的默认工作目录位于
$Spark\u HOME
中,可以在其中找到。/bin/Spark submit


看起来您无法通过Spark配置本身配置工作目录,这意味着您需要在
ubuntu
上构建一个自定义映像,该映像只需执行
WORKDIR/root/spark

我认为您在这里看到的问题是由于容器的当前工作目录没有安装spark。当您指定Spark与Mesos一起使用的docker映像时,它希望容器的默认工作目录位于
$Spark\u HOME
中,可以在其中找到。/bin/Spark submit


看起来您无法通过Spark配置本身来配置工作目录,这意味着您需要在
ubuntu
上构建一个自定义映像,只需执行
WORKDIR/root/Spark

我在Mesos和Docker上看到过同样的问题。在我的例子中,使用符号链接调整到本地spark shell/spark submit的路径并从那里运行它更容易,因为我不想更改docker映像中的路径。@tarnfeld我从“from java:openjdk-8-jdk”构建docker映像,并将当前工作目录更改为spark home,但仍然得到。/bin/spark submit:not Found我在Mesos和docker上看到了同样的问题。在我的例子中,使用符号链接调整到本地spark shell/spark submit的路径并从那里运行它更容易,因为我不想更改docker映像中的路径。@tarnfeld我从“from java:openjdk-8-jdk”构建docker映像,并将当前工作目录更改为spark home,但仍然获得。/bin/spark submit:未找到