centos7安装supervisor

Linux系统
339
0
0
2022-04-13

Supervisor(http://supervisord.org/)

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

supervisor:要安装的软件的名称。

supervisord:装好supervisor软件后,supervisord用于启动supervisor服务。

supervisorctl:用于管理supervisor配置文件中program。

yum安装supervisor

yum install epel-release先安装EPEL源

yum install -y supervisor

配置开机自启

systemctl enable supervisord

启动supervisord

systemctl start supervisord

查看状态

systemctl status supervisord

修改配置文件,开启web界面访问

vim /etc/supervisord.conf

把[inet_http_server]模块的注释去掉

并修改IP、用户名与密码

centos7安装supervisor

重新加载配置文件

supervisorctl reload

cat /etc/supervisord.conf

查看配置文件最后一个模块

配置需要管理的进程

vim /etc/supervisord.conf 也可修改为

files = supervisord.d/*.conf后缀

目录在/etc/supervisord.d/下面

到/etc/supervisord.d/目录下,创建需要管理的进程配置文件

例如我们创建一个 laravel-worker.conf 来启动与监控一个 queue:listen 进程

[program:laravel-worker]

process_name=%(program_name)s_%(process_num)02d

command=php /home/forge/app.com/artisan queue:listen

autostart=true

autorestart=true

user=forge

numprocs=8

redirect_stderr=true

stdout_logfile=/home/forge/app.com/worker.log

这个例子里的 numprocs 命令会要求 Supervisor 运行并监控 8 个 queue:work 进程,并且在它们运行失败后重新启动

当这个配置文件被创建后,你需要更新 Supervisor 的配置,并用以下命令来启动该进程

supervisorctl reread

supervisorctl update

supervisorctl start laravel-worker:*

supervisorctl

status #查看程序状态
stop name #关闭name程序
start name #启动name程序
restart name # 重启name程序
reread #读取有更新的配置文件,不会启动新添加的程序
update #重启配置文件修改过的程序