一、安装python-setuptools.

yum install python-setuptools

二、安装supervisor

easy_install supervisor

三、配置

1、使用echo_supervisord_conf,我们将其重定向到文件中,然后修改其配置项。 运行supervisord服务的时候,需要指定supervisor配置文件,此处我们指定/etc/supervisor.

mkdir /etc/supervisor
echo_supervisord_conf > /etc/supervisor/supervisord.conf #配置输出到/etc/supervisor/supervisord.conf中

2、进程管理配置参数,不建议全都写在supervisord.conf文件中,可以将每个进程写一个配置文件放在include指定的目录下包含进supervisord.conf文件中。类似nginx的配置文件 (1)创建/etc/supervisor/config.d目录,用于存放进程管理的配置文件。(此处目录可自定义,与配置文件中对应即可)

mkdir /etc/supervisor/config.d

(2)修改/etc/supervisor/supervisord.conf中的include参数,将/etc/supervisor/conf.d目录添加到include中。

vi /etc/supervisor/supervisord.conf

在末尾增加

[include]
files = /etc/supervisor/config.d/*.conf

(3)可以在config.d目录添加test-worker.conf测试

[program:test-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /work/test/artisan queue:work --queue=high,default,low
autostart=true
autorestart=true
numprocs=2
redirect_stderr=true
stdout_logfile=/work/test/storage/logs/worker.log

四、常用命令

#启动supervisor,-c制定让其读取的配置文件
supervisord -c /etc/supervisor/supervisord.conf

#关闭supervisor
supervisorctl shutdown

#重新加载supervisor配置文件,并重启superivisor
supervisorctl reload

#添加或删除配置文件 
#更新
supervisorctl update

#管理supervisor的服务
###启动服务
supervisorctl start all
supervisorctl start service_name
###关闭服务
supervisorctl stop all
supervisorctl stop service_name
###查看状态
supervisorctl status [service_name]
###重新启动所有服务或者是某个服务
supervisorctl restart all
supervisorctl restart service_name

原文链接:https://blog.csdn.net/qq_33633013/article/details/82344650