Descripción de los trabajos

Un trabajo es una acción que Autonomous Linux realiza en una o más instancias, como la instalación de actualizaciones o la asociación de orígenes de software. Cuando se ejecuta un trabajo, realiza el trabajo necesario para cumplirlo, distribuye el trabajo a las instancias e informa de los resultados al servicio.

Puede ejecutar un trabajo inmediatamente o programarlo para una fecha y hora futuras. Puede programar algunos trabajos, como trabajos de actualización, como un evento recurrente o definirlos para que se reintenten automáticamente. Cuando se selecciona un reintento automático, si un trabajo falla en su primera ejecución, el servicio reintenta el trabajo hasta tres veces, cada cinco minutos de diferencia. Los trabajos programados se pueden etiquetar.

Estado del Trabajo

Los trabajos programados muestran la siguiente información:

  • Siguiente Ejecución: Fecha y hora en que se ejecutará el trabajo.
  • Recurrente: indica si el trabajo está configurado en un programa recurrente.
  • Destinos: identifica el número de instancias de destino para el trabajo.

Una vez despachado, un trabajo está en curso o terminado.

  • Los trabajos en curso informan de los siguientes valores de estado posibles:
    • Aceptado: el servicio ha aceptado el trabajo y tiene el trabajo listo para las instancias. Si un agente no selecciona un trabajo y permanece en el estado aceptado durante 24 horas, el servicio marca el fallo del trabajo.
    • En curso: un agente ha seleccionado el trabajo aceptado y lo está ejecutando en una instancia.
    • Cancelando: el trabajo se está cancelando
  • Los trabajos finalizados informan de los siguientes valores de estado posibles:
    • Correcto: el trabajo se ha terminado sin errores.
    • Con fallos: el trabajo presenta fallos.
    • Cancelado: el trabajo se ha cancelado

Puede ver los resultados detallados de un trabajo visitando el log del trabajo y los mensajes de error. Cuando un trabajo tiene una jerarquía, si falla algún trabajo secundario, el servicio marca el trabajo principal como fallido.

Nueva Ejecución de un Trabajo Fallido

Si un trabajo falla, puede volver a ejecutar el trabajo con fallos en lugar de crear manualmente un nuevo trabajo para reintentar la acción con fallos. Puede volver a ejecutar un trabajo con fallos inmediatamente o programarlo para que se ejecute en una fecha y hora futuras. Una nueva ejecución crea un nuevo trabajo de la misma acción (como la aplicación de actualizaciones o la asociación de orígenes de software). El trabajo original y su estado permanecen tal cual para fines de auditoría e históricos.

Para los trabajos de una jerarquía, puede volver a ejecutar el trabajo principal o volver a ejecutar los trabajos secundarios de forma individual. Al volver a ejecutar un principal con fallos, el servicio solo tiene como destino los trabajos secundarios con fallos. Por ejemplo, supongamos que tiene un grupo de diez instancias y falla un trabajo de actualización en tres de ellas. Después de revisar el log de trabajo y los mensajes de error y solucionar los problemas informados, puede volver a ejecutar el trabajo con fallos para el grupo. La nueva ejecución se dirige solo a las tres instancias que experimentaron el fallo original.

Trabajo programado restringido

Cada instancia de Autonomous Linux tiene un trabajo programado restringido con el tipo de actualización "Todo" que se ejecuta diariamente para mantener la instancia actualizada. Esto se denomina trabajo de actualizaciones autónomas. Puede editar la hora del día a la que se ejecuta el trabajo, pero no puede cambiar su frecuencia ni suprimir el trabajo.

Jerarquía de trabajos

Algunos trabajos se dividen en tareas más pequeñas. El servicio crea una jerarquía de trabajos en la que el trabajo inicial es el "principal" y las tareas más pequeñas son los "secundarios". Para trabajos más grandes o trabajos que afectan a varias instancias, puede determinar fácilmente qué tareas de un trabajo se han realizado correctamente o han fallado. Puede ver los trabajos secundarios en la sección Trabajo asociado de la página de detalles del trabajo principal.

Por ejemplo, un trabajo de actualización 'Todo' crea trabajos secundarios para cada tipo de actualización: seguridad, corrección de bugs, mejora, otros.

--Update All (parent)
  |--Update Security    (child)
  |--Update Bug fix     (child)
  |--Update Enhancement (child)
  |--Update Other       (child)

Los trabajos residen en el mismo compartimento que su recurso asociado. Para los trabajos asociados a un grupo, esto puede significar que los trabajos principales y secundarios residen en diferentes compartimentos. El trabajo principal reside en el compartimento asociado al grupo, mientras que los trabajos secundarios residen en el compartimento asociado a cada instancia. Consulte Consideraciones de compartimento para conocer las mejores prácticas.

Por ejemplo, agregar un origen de software a un grupo con tres miembros produce un único trabajo principal con tres trabajos secundarios, uno para cada instancia.
--Set software sources for dev group (parent in dev compartment)
  |--Set software source Instance 1 (child in dev compartment)
  |--Set software source Instance 2 (child in test compartment)
  |--Set software source Instance 3 (child in preview compartment)