我通過Oozie的火花行動運行中的紗線客戶機模式火花的工作。我需要指定驅動程序和應用程序主相關設置。我嘗試配置oozie記錄的spark-opts,但它不起作用。Oozie的火花行動 - 如何指定火花選擇採用
下面是從Oozie的DOC:
Example:
<workflow-app name="sample-wf" xmlns="uri:oozie:workflow:0.1">
...
<action name="myfirstsparkjob">
<spark xmlns="uri:oozie:spark-action:0.1">
<job-tracker>foo:8021</job-tracker>
<name-node>bar:8020</name-node>
<prepare>
<delete path="${jobOutput}"/>
</prepare>
<configuration>
<property>
<name>mapred.compress.map.output</name>
<value>true</value>
</property>
</configuration>
<master>local[*]</master>
<mode>client<mode>
<name>Spark Example</name>
<class>org.apache.spark.examples.mllib.JavaALS</class>
<jar>/lib/spark-examples_2.10-1.1.0.jar</jar>
<spark-opts>--executor-memory 20G --num-executors 50</spark-opts>
<arg>inputpath=hdfs://localhost/input/file.txt</arg>
<arg>value=2</arg>
</spark>
<ok to="myotherjob"/>
<error to="errorcleanup"/>
</action>
...
</workflow-app>
在上述火花OPTS被指定爲--executor-memory 20G --num-executors 50
而在說明它說,在同一頁上:
「的火花OPTS元素,如果目前,包含可被傳遞到驅動器的火花點火的選項列表。火花可以通過指定「鍵--conf =值」此處被傳遞配置選項」
所以要根據文件應該是--conf executor-memory=20G
其中之一就在這裏呢?我嘗試了兩個,但它似乎不工作。我在yarn-client模式下運行,所以主要想設置驅動程序相關的設置。我認爲這是我可以設置驅動程序設置的唯一地方。
<spark-opts>--driver-memory 10g --driver-java-options "-XX:+UseCompressedOops -verbose:gc" --conf spark.driver.memory=10g --conf spark.yarn.am.memory=2g --conf spark.driver.maxResultSize=10g</spark-opts>
<spark-opts>--driver-memory 10g</spark-opts>
在實際驅動程序jvm中,上述驅動程序的相關設置都沒有設置。我在linux進程信息中驗證了它。
參考:https://oozie.apache.org/docs/4.2.0/DG_SparkActionExtension.html