进程管理工具 Supervisord

用强大来形容他一点都不为过,该工具源起python。目前已经成为一款很成熟的进程管理工具。通过简单的安装配置,就可以将你的非daemon进程转成daemon进程。比如自己的写的各种小程序,都可以瞬间华丽变身。
这里科普一下,为啥要转成daemon?简单的说,就是把你的程序从应用层面提升到服务层面(不管你的程序是否具有服务的层次)
下面进入正题:

1.安装
一种推荐的方法a)是使用easy_install,一种python的安装工具,可以方便的下载,安装,更新Python packages。
如果已经安装easy_install 只要在shell中输入 easy_install supervisor
b)如果木有,也不想使用easy_install,那就去http://pypi.python.org/pypi/supervisor下载,然后解包python setup.py install吧
更多安装方法也可以参照 http://supervisord.org/installing.html

2.配置
以下命令请在shell运行

echo_supervisord_conf > /etc/supervisord.conf
mkdir /etc/supervisord.conf.d
cat << EOF >> /etc/supervisord.conf.d
[include]
files = /etc/supervisord.conf.d/*.conf
EOF

如果需要打开web监控,请将如下配置前的分号去掉
[inet_http_server] ; inet (TCP) server disabled by default
port=127.0.0.1:8080 ; (ip_address:port specifier, *:port for all iface)
username=user ; (default is no username (open server))
password=123 ; (default is no password (open server))

3.给进程建立配置文件
为了方便配置的维护,所有进程配置请保存在/etc/supervisord.conf.d/路径下,以*.conf形式

vi /etc/supervisord.conf.d/yourprogram.conf

配置例子如下
[program:yourprogram]
directory = /var/program
command = /var/program/yourprogram
autostart = true
startsecs = 5
user = root
redirect_stderr = true
stdout_logfile = /var/log/supervisord/yourprogram.log

详细配置请参加官方文档 http://supervisord.org/configuration.html#program-x-section-settings

4.启动
以root身份 在shell中输入 supervisord 即可。