linux如何设置Supervisor启动多个进程并监控自动重启?
网友回复
安装supervisor
1、首先安装一个supervisor
pip install supervisor
2、生成配置文件
cd /usr/local/bin/
echo_supervisord_conf > /etc/supervisord.conf
3、编辑配置文件
vi /etc/supervisord.conf
4、最后面加上以下配置
[include] files = /etc/supervisor/*.conf
这是存放进被管理的进程的配置文件
5、开启web控制台,找到如下几行,去掉注释
[inet_http_server] ; inet (TCP) server disabled by default port=127.0.0.1:9001 ; ip_address:port specifier, *:port for all iface username=user ; default is no username (open server) password=123456 ; default is no password (open server)
之后可以通过web界面登录管理,查看日志等 6、添加管理进程的配置文件
mkdir /etc/supervisor/ 通过vi创建文件 vi /etc/supervisor/amazon_server.conf
接下来是program的配置: ;amazon_server.conf [program:amazon_server] ;程序名 directory = /root/amazon_server ; 程序的启动目录 command = python app.py ; 启动命令,可以看出与手动在命令行启动的命令是一样的 autostart = true ; 在 supervisord 启动的时候也自动启动 startsecs = 5 ; 启动 5 秒后没有异常退出,就当作已经正常启动了 autorestart = true ; 程序异常退出后自动重启 startretries = 3 ; 启动失败自动重试次数,默认是 3 numprocs= 4 ;启动多个进程,不设置就是单进程启动 user = root ; 用哪个用户启动 redirect_stderr = true ; 把 stderr 重定向到 stdout,默认 false stdout_logfile_maxbytes = 100MB ; stdout 日志文件大小,默认 50MB stdout_logfile_backups = 10 ; stdout 日志文件备份数 ; stdout 日志文件,需要注意当指定目录不存在时无法正常启动,所以需要手动创建目录(supervisord 会自动创建日志文件) stdout_logfile = /root/amazon_server/app.log
如需管理多个不同的进程,那就配置多个文件 启动supervisor supervisord -c /etc/supervisord.conf 查看管理进程的状态 supervisorctl status 关闭,启动,重启 supervisorctl stop|start|restart test1 关闭supervisor
ps -ef | grep super,然后kill -9 杀进程 注意,直接杀掉supervisor的主进程,被管理的进程仍然运行状态,所以记得先stop被管理的进程。
如果修改了各个配置文件,都需要重启supervisor。 浏览器访问IP地址:9001,打开web控制台,输入我们配置文件设置的用户和密码
在控制台可以方便得重启,停止,查看日志,非常方便,在运维时,为了安全性,只需搭建一个supervisor管理平台,里面安装常用的tomcat,httpd,nginx,oracle,mysql等,结合supervisor多进程管理web控制台,会一点电脑知识的人培训下就能掌握。只是supervisor不支持跨机进程监控。
配置中文说明 [unix_http_server] file=/tmp/supervisor.sock ;UNIX socket 文件,supervisorctl 会使用 ;chmod=0700 ;socket文件的mode,默认是0700 ;chown=nobody:nogroup ;socket文件的owner,格式:uid:gid
[inet_http_...
点击查看剩余70%
python如何调用openai的api实现知识讲解类动画讲解视频的合成?
html如何直接调用openai的api实现海报可视化设计及文本描述生成可编辑海报?
f12前端调试如何找出按钮点击事件触发的那段代码进行调试?
abcjs如何将曲谱播放后导出mid和wav格式音频下载?
python如何将曲子文本生成音乐mp3或wav、mid文件
python中mp3、wav音乐如何转成mid格式?
js在HTML中如何将曲谱生成音乐在线播放并下载本地?
python如何实现在windows上通过键盘来模拟鼠标操作?
python如何给win10电脑增加文件或文件夹右键自定义菜单?
python如何将音乐mp3文件解析获取曲调数据?