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.
- Recorrente: Indica se a ordem de produção está definida em uma programação recorrente.
- 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 do job 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 executar novamente um job com falha imediatamente ou programá-lo para execução 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 cargos em uma hierarquia, você pode reexecutar o cargo pai ou reexecutar individualmente os cargos filhos. Quando você executa novamente um pai com falha, o serviço tem como alvo apenas 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 delas. Depois de analisar 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 tem como alvo apenas as três instâncias que sofreram 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)