1.安装
先确保我们的系统安装有 Python 环境和 pip,然后直接使用 pip 安装即可。
$ pip install supervisor
我们可以用查看版本号的方法检查是否成功安装:
$ supervisord -v
使用 echo_supervisord_conf 命令可在终端打印出 Supervisor 的配置文件:
$ echo_supervisord_conf
2.使用 Supervisor 运行 Supervisor
为了让 Supervisor 运行起来,我们先给它添加可执行的程序。添加程序需要在 配置文件中添加,其路径为:/etc/supervisor/supervisord.conf
我们用 Linux 自带的一个简单程序 cat 作为测试,在配置文件中添加以下部分:
# /etc/supervisor/supervisord.conf
[program:foo]
command=/bin/cat
现在运行 supervisord 命令就能启动 Supervisor。
$ sudo Supervisor
Supervisor 启动时候会搜索默认的配置文件路径以读取要配置,我们可以使用一个 -c 参数来指定配置文件路径。
$ sudo supervisord -c /etc/supervisor/supervisord.conf
关于 Supervisor 更多的命令行参数见 官方文档说明。
3.使用 supervisorctl 管理 Supervisor
使用 supervisorctl 命令会进入一个 shell 控制台,允许你控制当前由 supervisorctl 管理的进程。
$ sudo supervisorctl
foo RUNNING pid 28646, uptime 4:26:03
supervisor>
可以看到当前正在运行的进程 foo现在我们可以在该控制台进行管理操作了。
supervisorctl 参数:
-
help:打印可用命令列表
supervisor> help
default commands (type help <topic>):
=====================================
add exit open reload restart start tail
avail fg pid remove shutdown status update
clear maintail quit reread signal stop version
add <name> [...]:激活一个(配置文件中配置好的)进程或组remove <name> [...]:把一个进程或组移除已激活状态update/update all:更新,将重新加载配置文件,并更具更新后的配置文件重新启动程序update <gname> [...]:更新指定的组,参数为组名clear <name>/clear all:清除进程日志文件pid/pid <name>/pid all:获取 PIDreload:重启 supervisordreread:重新加载配置文件(不重启)restart <name>/restart <gname>/restart all:重启某个进程或全部进程(不会重新加载配置文件)start <name>/start <gname>/start all:启动某个进程或全部进程stop<name>/stop<gname>/stopall:暂停某个进程或全部进程status/status <name>:打印全部或某个进程的状态