O Systemd não reinicia o serviço, embora Restart = always

10

Aqui está o meu arquivo unitário de um serviço systemd:

[Unit]
Description=Tunnel For %i
After=network.target

[Service]
User=autossh
ExecStart=/usr/bin/autossh -M 0 -N -o "ExitOnForwardFailure yes" -o "ConnectTimeout=1" -o "ServerAliveInterval 60" -o "ServerAliveCountMax 3" -R 40443:installserver:40443 -R 8080:installserver:8080 tunnel@%i
Restart=always

[Install]
WantedBy=multi-user.target

A unidade falhou 15 dias atrás e o systemd não a reiniciou, embora "Restart = always" esteja no arquivo de unidade acima.

Aqui a saída de status deste serviço:

salt:/srv # systemctl status autossh@eins-work
[email protected] - Tunnel For eins-work
      Loaded: loaded (/etc/systemd/system/[email protected]; enabled)
      Active: failed (Result: start-limit) since Wed, 2016-02-10 14:33:34 CET; 2 weeks and 1 days ago
    Main PID: 17980 (code=exited, status=0/SUCCESS)
      CGroup: name=systemd:/system/[email protected]/eins-work

Feb 10 14:33:34 salt systemd[1]: Stopping Tunnel For eins-work...
Feb 10 14:33:34 salt systemd[1]: Starting Tunnel For eins-work...
Feb 10 14:33:34 salt systemd[1]: Failed to start Tunnel For eins-work.
Feb 10 14:33:34 salt systemd[1]: Unit [email protected] entered failed state

Relacionado: link

Como configurar um serviço systemd para sempre reiniciar se algo falhar?

    
por guettli 25.02.2016 / 15:20

1 resposta

4

O serviço falhou ao iniciar muitas vezes seguidas e, assim, o systemd desistiu de tentar. Isso é o que significa Result: start-limit .

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.

Você deve resolver o problema que está causando falha no serviço.

Se você precisar ajustar quantas vezes e com que rapidez o systemd tenta reiniciar um serviço com falha, consulte as opções StartLimitInterval= , StartLimitBurst= e StartLimitAction= .

    
por 25.02.2016 / 16:33