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.
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.
|
|
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:
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. |
- 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.
# 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.
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