Linux 下python 利用supervisord自动重启多进程

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.gz
cd supervisor
python setup.py install

如下提示,安装完成:

1
2
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配置中的程序,看是否会重启。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值