Quais são as possíveis causas do erro do systemd? Falha ao enfileirar OnFailure = job: Deadlock de recurso evitado?

0

Minhas tarefas systemd onFailure não foram executadas, e vejo isso no diário system :

: Failed to enqueue OnFailure= job: Resource deadlock avoided

Quais são as possíveis causas que podem acionar esta mensagem e impedir que minha tarefa OnFailure= seja executada?

Estou usando o systemd v229

    
por Mark Stosberg 30.05.2017 / 17:14

1 resposta

0

Isso pode ser acionado em uma configuração do sistema projetada para inicializar um sistema, executar uma única tarefa e, em seguida, desligar. O serviço systemd que também contém a tarefa OnFailure= com falha também pode conter:

ExecStopPost=/usr/bin/sudo /sbin/poweroff

Existe um deadlock em que, para terminar de desligar a unidade, os comandos poweroff precisam ser executados. Mas para o comando poweroff terminar a execução, ele precisa parar a unidade.

Enquanto isso, a tarefa OnFailure= está sendo executada enquanto esse deadlock está ocorrendo.

Por fim, parece que a ação poweroff logo "vence" o deadlock, impedindo também que a tarefa OnFailure= seja executada.

Uma solução alternativa na AWS é definir um alarme do CloudWatch na instância. O alarme terá a opção de "Executar ação: desligamento" se a CPU máxima na instância for inferior a 1% da CPU por 15 minutos.

    
por 30.05.2017 / 17:19

Tags