設定適用於 Oozie 的 Java 版本 - Amazon EMR

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

設定適用於 Oozie 的 Java 版本

Oozie 會執行多個 Java 虛擬機器 (JVM) 程序。本頁介紹了如何設定每個程序的 Java 版本。

  • Oozie 伺服器:在 oozie-env 分類中設定 JAVA_HOME 以更新 EmbeddedOozieServer 的 Java 版本。

  • Oozie Launcher AMOozie Launcher AM 是一個單映射器 MR 作業,可調用適當的應用程式用戶端庫,如 Hadoop 和 Hive。除非另有設定,否則 Oozie Launcher AM 的執行期版本與 EMR 叢集中 Hadoop 的 Java 執行期相同。若要設定 Oozie Launcher AM 的 Java 執行期,請在 workflow.xml 中設定作業的下列屬性:

    <property> <name>mapred.child.env</name> <value>JAVA_HOME=/path/to/JAVA_HOME</value> </property>

    此屬性可確保 Oozie 作業的 Oozie Launcher AM 在您指定的 Java 版本上執行,而不是在 Hadoop 中設定的 Java 版本上。

  • 應用程式用戶端可執行檔:由於 Oozie Launcher AM 預設調用應用程式用戶端,因此用戶端可執行檔的 Java 執行期與 Oozie Launcher AM 相同。

  • 由 Oozie 作業啟動的應用程式:除非另有指定,否則 Oozie 作業啟動的實際應用程式 JVM 的執行期版本與 EMR 叢集中 Hadoop 的 Java 執行期相同。根據用於在 Oozie 作業中啟動應用程式的 Oozie 作業流程動作類型 (Spark 或 Hive 動作),您可以更新 Oozie 作業的 workflow.xml 中實際應用程式 JVM 的預設 Java 執行期。