我想监控Linux 中的几个服务。万一它们宕机了,我想重新启动它们。
我正在编写一个 crontab,它将每 60 秒使用 jps 命令获取服务的名称,如果它们不存在于结果集中,则发出特定于每个服务的重新启动命令。
我希望这些服务始终可用,这样万一它们出现故障,我能够让它们重新启动并运行。
我担心万一这些服务挂掉我怎么知道。有没有办法了解挂起的服务并杀死它们?
是否有一种干净的方法来实现服务的自动重启,以处理“关闭的服务”和“挂起的服务”。
答案1
已经编写了很多软件来解决此类问题;铁Monit
和supervisord
。不要重新发明轮子。