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 |