在debian监督守护进程

时间:2015-07-04 08:38:26

标签: debian supervisord daemons runit

我们在 Debian wheezy(oldstable) linux服务器上运行rabbitmq,redis和celery。所有这些都安装为init.d脚本并在启动时启动。我们想留意他们并收到电子邮件提醒,如果其中任何一个发生故障。

我检查过supervisord和runit等工具。但是,它们似乎都要求受监视的进程不是守护进程。

如何完成这项工作?还有其他工具可以完成工作吗? PLS。指教。

2 个答案:

答案 0 :(得分:1)

我不是这方面的专家,但由于Debian Jessie守护进程由systemd管理,我建议您使用sytemd代替init.d,然后用 systemctl密切关注你的守护进程。我发现systemctl非常适合监控,可能还有更多工具systemd来执行此操作。

要完成回答您的问题,请使用systemctl status <daemon>了解守护程序的状态,我认为它也适用于init.d脚本。

rsm@matrice:~$ systemctl status alienware-kbl
● alienware-kbl.service - alienware-kbl daemon
   Loaded: loaded (/usr/lib/systemd/system/alienware-kbl.service; enabled)
   Active: active (running) since Sat 2015-07-04 10:30:17 CEST; 3h 7min ago
 Main PID: 1024 (alienware-kbl)
   CGroup: /system.slice/alienware-kbl.service
           ├─1024 /bin/bash /usr/bin/alienware-kbl --start-daemon
           └─1029 /usr/bin/python2.7 /usr/share/alienware-kbl/Daemon.py --start-daemon

作为一名新手/新手程序员,我发现在systemd之上制作守护进程比在init.d

之上更容易

答案 1 :(得分:0)

根据rsm的建议,我们创建了一个名为daemonsitter的简单工具来监视Systemd守护进程。我们已经在github(https://github.com/dataglen/daemonsitter.git)的apache许可下将其作为开源发布。