gue*_*tli 10 fault-tolerance systemd
这是我的 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
Run Code Online (Sandbox Code Playgroud)
该单元在 15 天前出现故障并且 systemd 没有重新启动它,尽管“Restart=always”在上面的单元文件中。
这里是这个服务的状态输出:
salt:/srv # systemctl status autossh@eins-work
autossh@eins-work.service - Tunnel For eins-work
Loaded: loaded (/etc/systemd/system/autossh@.service; 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/autossh@.service/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 autossh@eins-work.service entered failed state
Run Code Online (Sandbox Code Playgroud)
相关:https : //serverfault.com/a/563401/90324
如果出现故障,如何将 systemd 服务配置为始终重新启动?
该服务连续多次启动失败,因此 systemd 放弃了尝试。这就是这个Result: start-limit意思。
请注意,已配置
Restart=且达到启动限制的单元将不再尝试重新启动;但是,它们仍然可以在稍后的时间点手动重新启动,从那时起,重新启动逻辑将再次激活。请注意,这systemctl reset-failed将导致服务的重新启动率计数器被刷新,如果管理员想要手动启动一个单元并且启动限制会干扰该操作,则这非常有用。
您应该解决导致服务无法启动的问题。
如果您需要调整 systemd 尝试重新启动失败服务的次数和速度,请参阅StartLimitInterval=和选项StartLimitBurst=StartLimitAction=。
| 归档时间: |
|
| 查看次数: |
9738 次 |
| 最近记录: |