supervisor

本文最后更新于:2021年12月8日 凌晨

信息

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

安装

基础安装

1
2
yum install -y epel-release
yum install -y supervisor

配置

  1. 通过默认配置创建配置文件

    1
    2
    sudo mkdir /etc/supervisor
    sudo echo_supervisord_conf > /etc/supervisor/supervisord.conf
  2. 修改配置文件

    1
    vim /etc/supervisor/supervisord.conf
    • 增加配置文件文件夹路径
      此配置在配置文件最底部
      1
      2
      [include]
      files = /etc/supervisor/conf.d/*.conf
    • 修改sock文件保存位置
      file=/tmp/supervisor.sock -> file=/etc/supervisor/supervisor.sock
    • 修改日志位置
      logfile=/tmp/supervisord.log -> logfile=/etc/supervisor/supervisord.log
    • 修改 pid文件保存的位置
      pidfile=/tmp/supervisord.pid -> pidfile=/etc/supervisor/supervisord.pid
    • 修改 unix socket 的 url
      serverurl=unix:///tmp/supervisor.sock -> serverurl=unix:///etc/supervisor/supervisor_unix.sock
  3. 创建配置文件夹

    1
    mkdir /etc/supervisor/conf.d

    使用

1
vim /etc/supervisor/conf.d/app.conf 

常用命令

1
2
3
4
5
6
supervisorctl status  # 运行状态查看
supervisorctl stop 程序名
supervisorctl start 程序名
supervisorctl restart # 重启
supervisorctl update # 配置文件修改后使用该命令加载新的配置
supervisorctl reload # 重新启动配置中的所有程序

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!