Mesos上的Spark:如何为驱动程序和执行程序docker run提供环境变量

时间:2017-03-15 18:47:14

标签: apache-spark mesos mesosphere

我们正在使用宇宙中的Mesos中的spark框架并运行驱动程序&执行者通过设置

作为docker容器
SPARK_JAVA_OPTS="-Dspark.mesos.executor.docker.image=mesosphere/spark:1.0.8-2.1.0-1-hadoop-2.6". 

我们可以通过

以群集模式提交作业
./bin/spark-submit --deploy-mode cluster --class org.apache.spark.examples.SparkPi --master mesos://xx.xx.xx.xxx:xxxx --executor-memory 2G --total-executor-cores 12 --driver-memory 1G https://s3-us-west-2.amazonaws.com/xxxxx/spark-examples_2.11-2.1.0.jar 20000

这成功推出了火花执行器&多个mesos节点上的任务作为docker容器。

在我们的mesos中,我们有灵感来自lyft(https://github.com/lyft/metadataproxy)的容器范围角色。

现在我想用自己的容器角色运行spark执行器和任务,基本上它需要我们为docker run命令设置一个环境变量IAM_ROLE = xxx。 例如:

docker run -d -e IAM_ROLE=xxxx alpine:xxx

如何使用./bin/spark-submit启动spark应用程序,并将IAM_ROLE作为所有执行程序的环境变量&在mesos节点上以docker run命令启动的任务。

0 个答案:

没有答案