Spark-提交如何设置user.name

ank*_*000 5 hadoop apache-spark hadoop2

想设置

mapreduce.job.user.name=myuser
Run Code Online (Sandbox Code Playgroud)

试过

spark-submit  --class com.MyClass
--conf mapreduce.job.user.name=myuser \ 
--conf spark.mapreduce.job.user.name=myuser \
--master yarn  \
--deploy-mode cluster \
Run Code Online (Sandbox Code Playgroud)

也试过

--conf user.name
Run Code Online (Sandbox Code Playgroud)

在 Spark UI 显示的环境中

user.name yarn
Run Code Online (Sandbox Code Playgroud)

Ron*_*tel 0

设置为运行时环境变量

尝试:

--conf spark.executorEnv.mapreduce.job.user.name=myuser
Run Code Online (Sandbox Code Playgroud)

spark.executorEnv.[EnvironmentVariableName]- 将EnvironmentVariableName指定的环境变量添加到Executor进程中。用户可以指定其中的多个来设置多个环境变量。

  • 呵呵 - `mapreduce.job.user.name` 是 Hadoop 属性,而不是 Linux 环境变量。另外,YARN 作业用户是在连接到 YARN 资源管理器以分配作业及其容器时由 Spark 驱动程序设置的;当执行器开始在容器中运行时,作业就已经定义了...... (3认同)