supervisor 进程管理

322 阅读1分钟

介绍

Supervisor是一个Linux下用Python开发的进程管理工具,提供了web管理界面,通过配置需要监控的进程,可以很方便的监控并管理进程,当监控的进程因为各种原因断开的时候,能自定重启该进程。

安装

sudo apt-get install supervisor

工具文件

ubuntu@VM-0-16-ubuntu:~/go/dcms$ ls /usr/bin | grep super
echo_supervisord_conf 生成一个配置文件示例
supervisorctl 客户端
supervisord 服务端

配置文件

ubuntu@VM-0-16-ubuntu:~/go/dcms$ tree /etc/supervisor/
/etc/supervisor/
├── conf.d
│   └── dcms.conf

启动服务

supervisord -c /etc/supervisor/supervisord.conf

添加子进程配置文件

[program:xserver]                   ; xserver 进程名称
command=/home/ubuntu/go/dcms/main   ; 被监控的进程路径
priority=10                    ;数字越高,优先级越高
numprocs=1                    ; 启动几个进程
autostart=true                ; 随着supervisord的启动而启动
autorestart=true              ; 自动重启。。当然要选上了
startretries=10               ; 启动失败时的最多重试次数
exitcodes=0                   ; 正常退出代码(是说退出代码是这个时就不再重启了吗?待确定)
stopsignal=KILL               ; 用来杀死进程的信号
stopwaitsecs=10               ; 发送SIGKILL前的等待时间
redirect_stderr=true          ; 重定向stderr到stdou

启动进程

supervisorctl reload

关闭进程

supervisorctl stop xserver