1
我々はそうのようなクラスタ上でスパークジョブを実行します。Sparkクラスの環境変数の値を取得する方法は?
export HADOOP_USER_NAME=blah
spark-submit --class "com.myapp.MyClass" --master yarn --deploy-mode cluster ....
が、我々はSystem.getenvを使用してMyClass.scala
にアクセスHADOOP_USER_NAME
にしようとしたとき、我々はNULL値を取得します。これはおそらく、env変数がクラスタ上で実行されているマシンに伝播しないためです。どうすればこの問題を解決できますか?
これは私たちがやっていることです。 confに追加する代わりにJARに入力するコマンドラインオプションに-owner $ HADOOP_USER_NAME – morpheus
のようなコマンドラインオプションを追加します。私はSparkにそのためのメカニズムはないと思います。 –