1、安装supervisord
利用SecureCRT进入Linux环境,输入python,进入python shell环境,import supervisor看是否安装了supervisord,若没有安装,
yum install python-setuptools
easy_install supervisor
如果easy_install不好使就在windows下从官方下载解压后并上传到Linux:
https://pypi.python.org/packages/80/37/964c0d53cbd328796b1aeb7abea4c0f7b0e8c7197ea9b0b9967b7d004def/supervisor-3.3.1.tar.gzcd supervisorpython setup.py install如下提示,安装完成:
12 Using /usr/lib64/python2.7/site-packages
Finished processing dependencies
for
supervisor==3.3.1
2、配置supervisord
a.创建文件夹和配置文件
mkdir /etc/supervisor
echo_supervisord_conf > /etc/supervisor/supervisord.conf
b.修改/etc/supervisor/supervisord.conf文件内容
在文件结尾[include]节点处添加下面内容,保存退出,注意program:后的名字
[program: TomasMail]
command=python /usr/local/jobmail/Study/TomasMail.py
autorestart=true ; 程序意外退出是否自动重启
autostart=true ; 是否自动启动
startsecs=5 ; 自动重启间隔
startretries=3 ; 启动失败自动重试次数,默认是 3
redirect_stderr=true ;将stderr重定向到stdout
stdout_logfile=/usr/local/jobmail/Study/TomasMail.log ; 输出日志文件
[program: TomasSend]
command=python /usr/local/jobmail/Study/TomasSend.py
autorestart=true
autostart=true
startsecs=5
startretries=3
redirect_stderr=true
stdout_logfile=/usr/local/jobmail/Study/TomasSend.log
一份配置文件至少需要一个 [program:x]
部分的配置,来告诉 supervisord 需要管理哪个进程。
3、 运行supervisord:
supervisord -c /etc/supervisor/supervisord.conf
ps -le | grep supervisord 查看supervisord是否启动,有进程号,若修改supervisord.conf,需要把supervisord删除(kill 进程号)后再运行
supervisord -c /etc/supervisor/supervisord.conf
4、测试supervisord是否正确配置
ps aux|grep python 显示运行的进程,删除supervisord配置中的程序,看是否会重启。