supervisor 守护多个进程_supervisor守护进程
发布日期:2022-02-19 00:02:20 浏览次数:6 分类:技术文章

本文共 2332 字,大约阅读时间需要 7 分钟。

1.python3安装supervisor

pip3 install supervisor -i http://pypi.douban.com/simple

2.生成配置文件并修改部分参数

echo_supervisord_conf >

/volume1/ZQWZ/MS_PMS/conf/supervisord.conf

注释掉 ;[unix_http_server]部分

打开[inet_http_server] 部分,并设置账号密码

port设为 0.0.0.0:9001

[supervisorctl]

;serverurl=unix:///tmp/supervisor.sock ; use a unix:// URL for a

unix socket

serverurl=http://127.0.0.1:9001 ; use an http:// url to specify an

inet socket

username=账号 ;与_http_server同 ; should be same as in [*_http_server]

if set

password=密码 ;与_http_server同 ; should be same as in [*_http_server]

if set

;prompt=mysupervisor ; cmd line prompt (default "supervisor")

;history_file=~/.sc_history ; use readline history if

available

最后的 [include] 指定程序配置文件的位置

[include]

files =/volume1/ZQWZ/MS_PMS/conf/supervisor.d/*.conf

3.配置.conf文件(在第二步的include指向的位置手动生成)

例:

[program:MS_PMS_Asset_Management_backend]

;程序名,conf文件名与程序名同

command=/volume1/ZQWZ/MS_PMS/pyvirtualenv/MS_PMS_Asset_Management_backend/bin/python

app.py ; 被监控的进程路径

directory=/volume1/ZQWZ/MS_PMS/MS_PMS_Asset_Management_backend

;程序启动目录

priority=1 ;数字越高,优先级越高

numprocs=1 ; 启动几个进程

autostart=true ; 随着supervisord的启动而启动

autorestart=true ; 自动重启。。当然要选上了

startretries=10 ; 启动失败时的最多重试次数

exitcodes=0 ; 正常退出代码(是说退出代码是这个时就不再重启了吗?待确定)

stopsignal=KILL ; 用来杀死进程的信号

stopwaitsecs=10 ; 发送SIGKILL前的等待时间

redirect_stderr=true ; 重定向stderr到stdout

4.启动supervisor

supervisord -c

/volume1/ZQWZ/MS_PMS/conf/supervisord.conf#conf文件位置

启动后可以通过9001端口进行管理

5.防火墙放行端口

firewall-cmd --list-port #查看开放的端口

firewall-cmd --permanent --zone=public --add-port=9001/tcp

firewall-cmd --reload

重启 supervisorctl

reload

6.其他一些命令行命令

1.启动进程

supervisorctl -c /etc/supervisord.conf start program_name

2.停止进程

supervisorctl -c /etc/supervisord.conf stop program_name

3.重启进程

supervisorctl -c /etc/supervisord.conf restart program_name

4.启动所有进程

supervisorctl -c /etc/supervisord.conf start all

5.停止所有进程

supervisorctl -c /etc/supervisord.conf stop all

6、更新新的配置到supervisord

supervisorctl update

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

supervisorctl reload #设置账号密码后需要先supervisorctl登录再执行reload

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

supervisorctl start program_name

9、查看正在守候的进程

supervisorctl status

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

pervisorctl stop program_name

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

supervisorctl restart program_name

12、停止全部进程

supervisorctl stop all

注意:显示用stop停止掉的进程,用reload或者update都不会自动重启。

转载地址:https://blog.csdn.net/weixin_34238178/article/details/111987864 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:二分查找向上还是向下取整_二分查找有几种写法?它们的区别是什么?
下一篇:easyui datagrid不是相邻的能合并单元格吗_审计过程中,有哪些能让你心动的Excel技巧?...

发表评论

最新留言

表示我来过!
[***.240.166.169]2024年04月08日 17时29分06秒