IBM Workload Automation, Versión 9.4

trabajos Apache Oozie

Un trabajo de Apache Oozie define, planifica, supervisa y controla la ejecución de flujos de trabajo de Oozie y trabajos de Hadoop, como: MapReduce, Pig, Hive y Sqoop.

Requisitos previos

Para obtener información sobre las versiones soportadas de los plug-ins de trabajo, genere un informe de integración de datos dinámicos desde el sitio web IBM® Software Product Compatibility Reports y seleccione la pestaña Software soportado: Integración de datos.

Para poder definir trabajos de Oozie, antes es necesario crear la conexión del agente de IBM Workload Scheduler con el servidor de Oozie.

definición de trabajo Oozie

En la ayuda según contexto de Dynamic Workload Console encontrará una descripción de las propiedades del trabajo y los valores válidos si pulsa el icono de interrogación (?) de la esquina superior derecha del panel de propiedades.

Para obtener más información sobre la creación de trabajos utilizando las diversas interfaces del producto soportados, consulte el Definición de un trabajo.

En la tabla siguiente se listan los atributos necesarios y opcionales para los trabajos de Oozie:
Tabla 1. Atributos necesarios y opcionales para la definición de un trabajo de Oozie
Atributo Descripción y valor Necesario
Atributos de conexión
hostname El nombre de host del servidor de Oozie. Si no se especifica el atributo hostname del host, los atributos hostname, protocol y VerifyCheckbox se leen desde el archivo de propiedades.
port El número de puerto donde el servidor de Oozie escucha.  
protocol Protocolo para conectarse al servidor de Oozie. Los valores soportados son http y https.  
userName Usuario que se utiliza para acceder al servidor de Oozie.  
password Contraseña que se utiliza para acceder al servidor de Oozie.  
keyStore FilePath La vía de acceso completa del archivo de almacén de claves que contiene la clave privada utilizada para establecer la conexión.  
keyStore Password La contraseña que protege la clave privada y que se necesita para establecer la conexión. Solo es necesaria si se especifica una vía de acceso del archivo de almacén de claves.
HostnameVerify
Checkbox
Los valores soportados son true y false.
  • Si el valor es true, la sintaxis del nombre del servidor de Oozie, tal y como se muestra en el archivo de almacén de claves, debe coincidir exactamente con el URL. Si no coinciden, no se otorgará autorización para acceder al servidor.
  • Si el valor es false, no se impone el control en el nombre del servidor.
 
NumberOfRetries El número de veces que el programa reintenta conectar si se produce un error de conexión. El valor predeterminado es 0.  
RetryIntervalSeconds El número de segundos que el programa espera antes reintentar la conexión si se produce un error de conexión. El valor predeterminado es 30.  
Atributos de acción para todos los tipos de trabajo
nodeName El URL del nodo de nombres de Hadoop.
jobTracker El URL del rastreador de trabajos de Hadoop.
jobUserName Nombre del usuario que envía el trabajo de Hadoop.
libPath La vía de acceso del sistema de archivos Hadoop en la que residen los archivos .jar necesarios para el trabajo de Hadoop.
Atributos de acción para el tipo de trabajo de flujo de trabajo de Oozie
workflowPath La vía de acceso del sistema de archivos de Hadoop en la que reside la aplicación de flujo de trabajo.
Atributos de acción para el tipo de trabajo MapReduce
Nombre de clase de la tarea del correlacionador El nombre de clase de la tarea de correlación.
Nombre de clase de la tarea del reductor El nombre de clase de la tarea del reductor.
Directorio de entrada de la tarea del correlacionador El directorio de entrada de la tarea del correlacionador.
Directorio de salida de la tarea del reductor El directorio de salida de la tarea del reductor.
Atributos de acción para los tipos de trabajo Hive, Pig, y Sqoop
Mandato o script real El mandato o script real que desea que se ejecute con su trabajo.
Parámetros Los parámetros y los valores relacionados que se pasan al trabajo.  
Opciones Las opciones que se pasan al trabajo.  
Atributos avanzados
customPropertiesTableValue Las propiedades adicionales y los valores relacionados que se podrían querer pasar al trabajo. Por ejemplo:
<jsdloozie:customPropertiesTableValue 
key="examplesRoot">ejemplos</jsdloozie:
customPropertiesTableValue>
donde examplesRoot es la propiedad y ejemplos es su valor.
 
timeout El tiempo de supervisión. Determina durante cuanto tiempo se supervisa el trabajo. Al final del intervalo del tiempo de espera, el trabajo falla. El valor predeterminado es 7200 segundos.  
pollingPeriod La frecuencia de supervisión. Determina la frecuencia con la que se supervisa el trabajo. El valor predeterminado es de 15 segundos.  
Nota:
Si se especifican valores incorrectos para timeout y pollingPeriod en el momento de la definición del trabajo, durante la ejecución del trabajo se sustituyen los valores incorrectos de la siguiente manera:
  • Si se especifican valores numéricos inferiores a los valores mínimos permitidos, se sustituyen por:
    timeout
    10 segundos (el valor mínimo permitido)
    pollingPeriod
    5 segundos (el valor mínimo permitido)
  • Si se especifican valores no numéricos, se sustituyen por:
    timeout
    7200 segundos (el valor predeterminado)
    pollingPeriod
    15 segundos (el valor predeterminado)

Planificación y detención de un trabajo en IBM Workload Scheduler

Puede planificar trabajos de IBM Workload Scheduler Oozie definiéndolos en secuencias de trabajos. Añada el trabajo a una secuencia de trabajos con todos los argumentos de planificación necesarios y envíe la secuencia de trabajos.

Puede enviar trabajos mediante Dynamic Workload Console, Application Lab o la línea de mandatos conman. Consulte el Planificación y envío de trabajos y secuencias de trabajos para obtener información sobre cómo planificar y enviar trabajos y secuencias de trabajos utilizando las distintas interfaces.

Tras el envío, cuando se esté ejecutando el trabajo y se notifique que su estado es EXEC en IBM Workload Scheduler, es posible detenerlo, si es necesario, mediante el mandato kill. Esta acción también detiene la ejecución del programa en el servidor de Oozie.

Supervisión de un trabajo

Si el agente de IBM Workload Scheduler se detiene al enviar el trabajo de Oozie o mientras el trabajo se está ejecutando, dicho trabajo se reinicia de forma automática en cuanto se reinicia el agente.

Para obtener información sobre cómo supervisar trabajos utilizando las distintas interfaces de producto disponibles, consulte Supervisión de trabajos de IBM Workload Scheduler.

Archivo OozieJobExecutor.properties

El archivo de propiedades se genera automáticamente al realizar "Probar conexión" en Dynamic Workload Console en los paneles de definición de trabajos o al enviar por primera vez el trabajo para su ejecución. Una vez que el trabajo se ha creado, puede personalizarlo. Esto es especialmente útil cuando tiene que planificar varios trabajos del mismo tipo. Puede especificar los valores en el archivo de propiedades y evitar tener que proporcionar información como por ejemplo credenciales y otra información para cada trabajo. Puede sustituir los valores de los archivos de propiedades definiendo distintos valores al definir el trabajo.

El archivo DIR_INST_TWS\TWS\JavaExt\cfg\OozieJobExecutor.properties contiene las siguientes propiedades:
# Propiedades de Oozie
hostname=
port=
protocol=http
user=
password=
keyStoreFilePath=
keyStorePassword=
HostnameVerifyCheckbox=false
NumberOfRetries=0
RetryIntervalSeconds=30
nodeName=
jobTracker=
jobUserName=
libPath=
pollingPeriod=15
timeout=7200
# Agregue aquí las propiedades de trabajos de Oozie personalizadas con el formato
CUSTOMOOZIEPROPERTY.<nombre_propiedad>=<valor_propiedad>
# Por ejemplo, CUSTOMOOZIEPROPERTY.queueName=default

Para obtener una descripción de cada propiedad, consulte la descripción del atributo de trabajo correspondiente en Tabla 1.

Propiedades del trabajo

Mientras se ejecuta el trabajo, es posible realizar un seguimiento del estado del trabajo y analizar sus propiedades. En concreto, en la sección Información adicional, si el trabajo contiene variables puede verificar el valor pasado a la variable desde el sistema remoto. Algunas secuencias de trabajos utilizan la característica de paso de variables, por ejemplo, el valor de una variable especificada en el trabajo 1, contenida en la secuencia de trabajos A, la requiere el trabajo 2 para ejecutarse en la misma secuencia de trabajos.

Para obtener información sobre cómo visualizar las propiedades de trabajo en las distintas interfaces soportadas, consulte el Análisis del registro de trabajo. Por ejemplo, en la línea de mandatos conman puede ver las propiedades de trabajo ejecutando:
conman sj <nombre_trabajo>;props
donde <nombre_trabajo> es el nombre de trabajo de Oozie.

Las propiedades se listan en la sección Información adicional del mandato de salida.

Para obtener información sobre cómo pasar propiedades de trabajo, consulte Pasar propiedades de trabajo de un trabajo a otro en la misma instancia de secuencia de trabajos.

Contenido del registro de trabajo

Para obtener información sobre cómo visualizar el registro de trabajo en las distintas interfaces soportadas, consulte el Análisis del registro de trabajo.

Por ejemplo, puede ver el contenido del registro de trabajo ejecutando conman sj <nombre_trabajo>;stdlist, donde <nombre_trabajo> es el nombre de trabajo de Oozie.

Consulte también

En Dynamic Workload Console puede realizar la misma tarea que se describe en

Creación de definiciones de trabajo.

Para obtener más información sobre cómo crear y editar objetos de planificación, consulte

Diseño de la carga de trabajo.