1. 安装:
    yum -y install supervisor

  2. 配置:
    vim /etc/supervisord.conf

    [unix_http_server]
    file=/var/run/supervisor/supervisor.sock
    ;web访问地址
    [inet_http_server]
    port=0.0.0.0:9001
    username=test
    password=123
    [supervisord]
    logfile=/var/log/supervisor/supervisord.log
    logfile_maxbytes=50MB
    logfile_backups=10
    loglevel=info
    pidfile=/var/run/supervisord.pid
    nodaemon=false
    minfds=1024
    minprocs=200
    [rpcinterface:supervisor]
    supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
    [supervisorctl]
    serverurl=unix:///var/run/supervisor/supervisor.sock
    ;进程管理目录
    [include]
    files = supervisord.d/*.ini
  3. 监控服务示例:
    vim /etc/supervisord.d/nginx.ini

    [program: nginx]
    ;directory=/home/work  ;我们的要启动进程的命令路径,即 cd 进该路径,然后执行命令
    ;environment=ENV=dev  ;启动该服务需设置的环境变量
    command=/usr/sbin/nginx  -g 'daemon off;'  ;不能使用 守护进程 的方式启动命令
    user=root  ;运行服务的用户
    stderr_logfile=/var/log/nginx-error.log  ;错误日志(自动创建)
    stdout_logfile=/var/log/nginx-stdout.log   ;标准输出日志(自动创建)
    autorestart=true
    autostart=true
    stopsignal=INT
    startsecs=10
    startretries=5
    stopasgroup=true
    # nginx 启动命令(在前台启动)
    /usr/sbin/nginx  -g 'daemon off;'
    # mysql  启动命令(在前台启动)
    /usr/sbin/mysqld --user=mysql
    # php-fpm  启动命令(在前台启动)
    /usr/sbin/php-fpm --nodaemonize --fpm-config /etc/php-fpm.conf
    # redis  启动命令(在前台启动)
    /usr/bin/redis-server /etc/redis.conf
    # rabbitmq  启动命令(在前台启动)
    /usr/sbin/rabbitmq-server
  4. 常用命令:

    1. 启动:
      systemctl start supervisord
    2. 停止:
      systemctl stop supervisord
  5. supervisorctl 常用命令:

    1. 查看程序状态:
      supervisorctl status 程序名
    2. 启动程序:
      supervisorctl start 程序名
    3. 停止程序:
      supervisorctl stop 程序名
    4. 重启程序:
      supervisorctl restart 程序名
    5. 查看程序日志:
      supervisorctl tail -f 程序名
    6. 重启/更新 配置文件:
      supervisorctl update
  6. web管理地址:

    http://xx.xx.xx.xx:9001
    # 用户名:test
    # 密码:123
文档更新时间: 2024-03-24 15:25   作者:lee