为 Oozie 配置 Java 版本 - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

为 Oozie 配置 Java 版本

Oozie 运行多个 Java 虚拟机(JVM)进程。本页说明如何为每个流程配置 Java 版本。

  • Oozie Server:在 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>

    此属性可确保 Ooozie 作业的 Oozie Launcher AM 在您指定的 Java 版本上运行,而不是在 Hadoop 中设置的 Java 版本上运行。

  • 应用程序客户端可执行文件:由于 Oozie Launcher AM 默认调用应用程序客户端,因此客户端可执行文件的 Java 运行时系统与 Oozie Launcher AM 相同。

  • 由 Ooozie 作业启动的应用程序:除非另有说明,否则由 Oozie 作业启动的实际应用程序 JVM 的运行时系统版本与 EMR 集群中 Hadoop 的 Java 运行时系统相同。根据用于在 Ooozie 作业中启动应用程序的 Oozie 工作流程操作的类型(Spark 或 Hive 操作),您可以更新 Oozie 作业的 workflow.xml 中更新实际应用程序 JVM 的默认 Java 运行时系统。