无法将alluxio.security.login.username添加到spark-submit

时间:2017-04-23 13:46:40

标签: apache-spark spark-submit alluxio

我有一个火花驱动程序,我正在尝试设置alluxio用户。

我读过这篇文章:How to pass -D parameter or environment variable to Spark job?虽然有帮助,但其中没有任何方法可以解决问题。

我的环境:

- Spark-2.2
- Alluxio-1.4
- packaged jar passed to spark-submit

spark-submit作业以root身份运行(在主管下),alluxio只识别该用户。

这是我尝试添加“-Dalluxio.security.login.username = alluxio”的地方:

  • spark-defaults.conf中的spark.driver.extraJavaOptions
  • 在spark-submit命令行中(使用--conf)
  • 在我的jar应用程序的sparkservices conf文件中
  • 在我的jar应用程序中名为“alluxio-site.properties”的新文件中

这些工作都没有为alluxio设置用户,尽管我很容易在另一个(非火花)客户端应用程序中设置此属性,该应用程序也写入alluxio。

任何能够进行此设置的人都可以申请火花提交工作吗?

1 个答案:

答案 0 :(得分:1)

如果spark-submit处于客户端模式,则应使用--driver-java-options而不是--conf spark.driver.extraJavaOptions=...,以便使用所需选项启动驱动程序JVM。因此,您的命令看起来像:

./bin/spark-submit ... --driver-java-options "-Dalluxio.security.login.username=alluxio" ...

这应该使用所需的Java选项启动驱动程序。

如果Spark执行程序也需要该选项,您可以使用以下选项进行设置:

--conf "spark.executor.extraJavaOptions=-Dalluxio.security.login.username=alluxio"