36
centos安装supervisor守护进程与简单配置使用

Supervisor(http://supervisord.org/)是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,不再需要自己写shell脚本来控制。

首先确定你的yum仓库有supervisor的包:

yum list | grep supervisor

如果没有先加入repo源。

centos6:

wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
rpm -ivh epel-release-6-8.noarch.rpm

centos7:

wget https://mirrors.tuna.tsinghua.edu.cn/epel/epel-release-latest-7.noarch.rpm
rpm -ivh epel-release-latest-7.noarch.rpm

之后再运行

yum install supervisor -y

安装结束会有一个默认的配置文件在 /etc/supservisord.conf

......
[include] 
files = supervisord.d/*.ini

其中已经有各个设置选项的默认配置: 

1. unix_http_server 通讯端口约定 

2. supservisord 主服务进程配置,需要此服务启动才能正常使用 

3. rpcinterface rpc接口 

4. supervisorctl 客户端配置,用来调度各个被守护的进程 

5. program:example 监听的进程配置 

6. eventlistener 事件监听 

7. group 组 

8. include 所加载的配置文件

一般按照默认配置即可使用,不建议在主配置里写其他进程,注意最后的include,会调用/etc/supervisord.d/*.ini文件。举例:

vi /etc/supervisord.d/example.ini

[program:swoole] 

command=php /home/swoole.php //运行的命令 

autostart=true //自动开启 

autorestart=true //自动重启 

user=root //用户 

numprocs=3 //进程数 

stdout_logfile=/var/log/supervisor-swoole.log //日志路径

使用

supervisorctl reread

重新加载配置,之后守护开始运行

如果有其他问题,可以使用命令重新运行所守护的进程

supervisorctl reload


这条帮助是否解决了您的问题? 已解决 未解决

提交成功!非常感谢您的反馈,我们会继续努力做到更好! 很抱歉未能解决您的疑问。我们已收到您的反馈意见,同时会及时作出反馈处理!