在 Yarn 集群上支持多个 Spark 分布

Support multiple Spark distributions on Yarn cluster

我 运行 通过 $SPARK_HOME/bin/spark-submit --master yarn --deploy-mode cluster 集群上的多个 spark 作业。

当新版本的 Spark 上线时,我想以某种方式在集群上推出新的分布和旧的分布,然后逐步迁移我所有的工作。

不幸的是,Spark 依赖于 $SPARK_HOME 全局变量,所以我不知道如何实现它。 当 Spark for Scala 2.12 发布时,它会特别有用。

可以在 YARN 集群上 运行 任意数量的 Spark 分布。我在我的 MapR 集群上做过很多次,混合了 1-3 个不同的版本,并在那里设置了官方的 Apache Spark。

您只需要调整 conf/spark-env.sh(重命名 spark-env.sh.template)并添加一行:

export SPARK_HOME=/your/location/of/spark/spark-2.1.0