Noções Básicas Sobre Cargos
Um job é uma ação que o Autonomous Linux executa em uma ou mais instâncias, como instalar atualizações ou anexar origens de software. Quando um job é executado, ele executa o trabalho necessário para atender ao job, despacha o trabalho para instâncias e reporta os resultados de volta ao serviço.
Você pode executar um job imediatamente ou programá-lo para uma data e hora futuras. Você pode programar alguns jobs, como jobs de atualização, como um evento recorrente ou defini-los para repetição automática. Quando a repetição automática é selecionada, se um job falhar em sua primeira execução, o serviço repetirá o job até três vezes, a cada cinco minutos. Os jobs programados podem ser marcados.
Status do Job
Os jobs programados mostram as seguintes informações:
- Próxima execução: A data e a hora em que o job será executado.
- Frequência: Indica se o job está definido em uma programação recorrente ou em uma execução única.
- Destinos: Identifica o número de instâncias de destino do job.
Depois de ser despachado, um job está em andamento ou concluído.
- Os jobs em andamento reportam os seguintes valores de status possíveis:
- Aceito: O serviço aceitou o job e tem trabalho pronto para instâncias. Se um job não for selecionado por um agente e permanecer no estado aceito por 24 horas, o serviço marcará o job com falha.
- Em Andamento: Um agente selecionou o trabalho aceito e está executando-o em uma instância.
- Cancelando: O job está sendo cancelado
- Os jobs concluídos reportam os seguintes valores de status possíveis:
- Bem-sucedido: O job foi concluído sem erro.
- Falha: O job falhou.
- Cancelado: O job foi cancelado
Você pode exibir os resultados detalhados de um job exibindo o log de jobs e as mensagens de erro. Quando um job tem uma hierarquia, se algum job filho falhar, o serviço marcará a falha do job pai.
Reexecutando um Job com Falha
Se um job falhar, você poderá reexecutar o job com falha em vez de criar manualmente um novo job para repetir a ação com falha. Você pode reexecutar um job com falha imediatamente ou programá-lo para ser executado em uma data e hora futuras. Uma nova execução cria um novo job da mesma ação (como aplicar atualizações ou anexar origens de software). O trabalho original e seu status permanecem como estão para fins de auditoria e histórico.
Para jobs em uma hierarquia, você pode reexecutar o job pai ou reexecutar individualmente jobs filhos. Quando você executa novamente um pai com falha, o serviço só tem como alvo os jobs filhos com falha. Por exemplo, suponha que você tenha um grupo de dez instâncias e um job de atualização falhe em três das instâncias. Após verificar o log de jobs e as mensagens de erro e resolver os problemas reportados, você poderá executar novamente o job com falha para o grupo. A reexecução destina-se apenas às três instâncias que apresentaram a falha original.
Job Programado Restrito
Cada instância no Autonomous Linux tem um job programado restrito com o tipo de atualização 'Todos' executado diariamente para manter a instância atualizada. Isso é chamado de job de atualizações autônomas. Você pode editar a hora do dia em que o job é executado, mas não pode alterar sua frequência ou excluir o job.
Hierarquia do Cargo
Alguns trabalhos são divididos em tarefas menores. O serviço cria uma hierarquia de cargos em que o cargo inicial é "pai" e as tarefas menores são "filhos". Para jobs maiores ou jobs que afetam várias instâncias, você pode determinar facilmente quais tarefas em um job foram bem-sucedidas ou falharam. Você pode exibir cargos filhos na seção Trabalho associado da página de detalhes do cargo pai.
Por exemplo, um job de atualização 'Todos' cria jobs filhos para cada tipo de atualização: Segurança, Correção de Bug, Aperfeiçoamento, Outros.
--Update All (parent)
|--Update Security (child)
|--Update Bug fix (child)
|--Update Enhancement (child)
|--Update Other (child)
Os jobs residem no mesmo compartimento de seu recurso associado. Para jobs associados a um grupo, isso pode significar que os jobs pai e filho residem em compartimentos diferentes. O job pai reside no compartimento associado ao grupo, enquanto os jobs filhos residem no compartimento associado a cada instância. Consulte Considerações sobre Compartimentos para obter as melhores práticas.
Por exemplo, adicionar uma origem de software a um grupo com três membros produz um único cargo pai com três cargos filhos, um para cada instância.--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)