Configurar la versión Java para Oozie - Amazon EMR

Configurar la versión Java para Oozie

Oozie ejecuta varios procesos de máquina virtual Java (JVM). En esta página, se explica cómo configurar la versión de Java para cada proceso.

  • Servidor de Oozie: se establece JAVA_HOME en la clasificación oozie-env para actualizar la versión de Java para EmbeddedOozieServer.

  • Oozie Launcher AM: Oozie Launcher AM es un trabajo de MR con un solo asignador que invoca las bibliotecas cliente de aplicaciones adecuadas, como Hadoop y Hive. A menos que se configure lo contrario, las versiones de tiempo de ejecución de Oozie Launcher AM son las mismas que las de los tiempos de ejecución de Java para Hadoop en el clúster de EMR. Para configurar el tiempo de ejecución de Java para Oozie Launcher AM, defina la siguiente propiedad en el workflow.xml para el trabajo:

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

    Esta propiedad garantiza que Oozie Launcher AM para la tarea de Oozie se ejecute en la versión de Java que especifique, en lugar de en la versión de Java configurada en Hadoop.

  • Ejecutable en el cliente de la aplicación: dado que Oozie Launcher AM invoca el cliente de la aplicación de forma predeterminada, el tiempo de ejecución de Java del ejecutable del cliente es el mismo que el de Oozie Launcher AM.

  • Aplicaciones lanzadas por un trabajo de Oozie: a menos que se especifique lo contrario, las versiones de tiempo de ejecución de las máquinas virtuales de aplicaciones reales que se lanzan mediante un trabajo de Oozie son las mismas que las de los tiempos de ejecución de Java para Hadoop en el clúster EMR. Según el tipo de acción de flujo de trabajo de Oozie que se utilice para iniciar la aplicación en un trabajo de Oozie (acción de Spark o Hive), puede actualizar el tiempo de ejecución de Java predeterminado para las JVM de la aplicación reales en el workflow.xml para el trabajo de Oozie.