systemd equivalente ao “respawn limit” da upstart

1

Eu estou tentando fazer um arquivo systemd que irá monitorar um serviço e reiniciá-lo se ele falhar. Aqui está a parte complicada: se o serviço falhar mais de 5 vezes em um minuto, quero marcá-lo como falho e parar de tentar reiniciá-lo automaticamente. Com o Upstart, isso foi feito facilmente com o "limite de respawn".

O Systemd pode limitar a reinicialização automática com o StartLimitIntervalSec, mas não é isso que eu quero. Eu não quero apenas limitar a taxa de reinicialização, mas sim desistir inteiramente se o limite for atingido.

    
por Sergey 01.02.2017 / 23:27

1 resposta

3

Na página de manual systemd.unit(5) , em StartLimitIntervalSec=, StartLimitBurst= :

Note that units which are configured for Restart= and which reach the start limit are not attempted to be restarted anymore; however, they may still be restarted manually at a later point, from which point on, the restart logic is again activated. Note that systemctl reset-failed will cause the restart rate counter for a service to be flushed, which is useful if the administrator wants to manually start a unit and the start limit interferes with that.

… então parece que a limitação da taxa de início do systemd faz o que você quer.

    
por 01.02.2017 / 23:54

Tags