supervisor的相关操作

supervisor

启动

/usr/bin/python2 /usr/bin/supervisord -c /etc/supervisor/supervisord.conf
supervisord是服务端,是个deamon,supervisorctl是客户。

更新新的配置到supervisord

supervisorctl update

重新启动配置中的所有程序

supervisorctl reload

启动某个进程(program_name=你配置中写的程序名称)

supervisorctl start program_name

查看正在守候的进程

supervisorctl

停止某一进程 (program_name=你配置中写的程序名称)

supervisorctl stop program_name

重启某一进程 (program_name=你配置中写的程序名称)

supervisorctl restart program_name

停止全部进程

supervisorctl stop all

查看 该程序的日志

supervisorctl tail -f program_name

配置

[program:ODProt_uwsgi]
command=/root/.pyenv/versions/py36_odmerchant/bin/uwsgi --ini /root/ODProt/odprot__uwsgi.ini    ##启动方式
autostart = True
startsecs = 5
user=root
redirect_stderr = True
stdout_logfile_maxbytes = 20MB
stdout_logfile_backups = 20
stdout_logfile = /root/ODProt/logs/gunicorn_stdout.log
stderr_logfile = /root/ODProt/logs/gunicorn_stderr.log

[program:odcrm_uwsgi]
command=/root/.pyenv/versions/py36_odmerchant/bin/uwsgi --ini /root/odcrm/odcrm__uwsgi.ini
autostart = True
startsecs = 5
user=root
redirect_stderr = True
stdout_logfile_maxbytes = 20MB
stdout_logfile_backups = 20
stdout_logfile = /root/odcrm/logs/gunicorn_stdout.log
stderr_logfile = /root/odcrm/logs/gunicorn_stderr.log

[program:ODment_uwsgi]
command=/root/.pyenv/versions/py36_odmerchant/bin/python /root/ODmerchant/manage.py runserver 127.0.0.1:8000
autostart = True
startsecs = 5
user=root
redirect_stderr = True
stdout_logfile_maxbytes = 20MB
stdout_logfile_backups = 20
stdout_logfile = /root/ODmerchant/logs/gunicorn_stdout.log
stderr_logfile = /root/ODmerchant/logs/gunicorn_stderr.log

错误

unix:///var/run/supervisor/supervisor.sock no such file

安装好supervisor没有开启服务直接使用supervisorctl报的错
supervisord -c /etc/supervisord.conf

ommand中指定的进程已经起来,但supervisor还不断重启

command中启动方式为后台启动,导致识别不到pid,然后不断重启
supervisor无法检测后台启动进程的pid,而supervisor本身就是后台启动守护进程

启动了多个supervisord服务,导致无法正常关闭服务

运行supervisord -c /etc/supervisord.conf 之前,我直接运行过supervisord -c /etc/supervisord.d/xx.conf,导致有些进程被多个superviord管理,无法正常关闭进程。
使用 ps -fe | grep supervisord 查看所有启动过的supervisord服务,kill相关的进程

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

另一个程序已经在监听一个端口,我们的一个HTTP服务器被配置为使用该端口
find / -name supervisor.sock ## supervisor.sock 文件
unlink /run/supervisor/supervisor.sock ##删除

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值