版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010615629/article/details/80655124
经测试发现,beanstalkd进程经常无故退出,所以采用进程守护
Supervisor
安装supervisor
1、安装python自动化工具# yum install python-setuptools
2、安装supervisor# easy_install supervisor
3、测试安装是否成功 # echo_supervisord_conf
1、创建配置文件
# mkdir -m 755 -p /etc/supervisor/
# echo_supervisord_conf > /etc/supervisor/supervisord.conf
2、编辑配置文件在supervisord.conf最后增加如下:
[program:test]
command=/opt/soft/php/bin/php /home/m/test/app/cli.php ;被监控进程
;process_name=%(process_num)02d
;numprocs=5 ;启动几个进程
autostart=true ;随着supervisord的启动而启动
autorestart=true ;自动启动
startsecs=1 ;程序重启时候停留在runing状态的秒数
startretries=10 ;启动失败时的最多重试次数
stderr_logfile=/tmp/supervisor/test_err.log ;错误日志
stdout_logfile=/tmp/supervisor/test.log ;日志
3、启动supervisor
1、启动supervisor
# supervisord -c /etc/supervisor/supervisord.conf
# pstree -p | grep supervisord 查看supervisord进程
2、进入supervisor管理
# supervisorctl -c /etc/supervisor/supervisord.conf
status 查看状态
》test RUNNING pid 2554,uptime 0:00:10
stop all停止
reload重启监控服务
注意:
(1)每次修改配置文件后**需进入supervisorctl,
执行reload**, 改动部分才能生效。
(2)两个命令
supervisord :
supervisor的服务器端部分,用于supervisor启动
supervisorctl:
启动supervisor的命令行窗口,在该命令行中可执行start、stop、status、reload等操作。
错误:
Error: Another program is already listening on a port that one of our HTTP servers is configured to use. Shut this program down first before starting supervisord.
解决:
sudo unlink /tmp/supervisor.sock
or
sudo unlink /var/run/supervisor.sock