Centos8 安装 Supervisor

551 阅读1分钟

安装

使用yum安装

yum install -y supervisor

使用pip安装

pip install supervisor
安装的位置
  • /usr/bin/supervisord :守护进程的服务
  • /usr/bin/supervisorctl :客户端
  • /etc/supervisord.conf :配置文件

启动命令

/usr/bin/supervisord -c /etc/supervisord.conf

常用命令

设置开机启动

添加配置文件
vim /etc/init.d/supervisor

文件内容


#!/bin/bash
#
# supervisord   This scripts turns supervisord on
#
# Author:       Mike McGrath <mmcgrath@redhat.com> (based off yumupdatesd)
#
# chkconfig:    - 95 04
#
# description:  supervisor is a process control utility.  It has a web based
#               xmlrpc interface as well as a few other nifty features.
# processname:  supervisord
# config: /etc/supervisor/supervisord.conf
# pidfile: /var/run/supervisord.pid
#

# source function library
. /etc/rc.d/init.d/functions

RETVAL=0

start() {
    echo -n $"Starting supervisord: "
    daemon "/usr/bin/supervisord -c /etc/supervisord.conf"
    RETVAL=$?
    echo
    [ $RETVAL -eq 0 ] && touch /var/lock/subsys/supervisord
}

stop() {
    echo -n $"Stopping supervisord: "
    killproc supervisord
    echo
    [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/supervisord
}

restart() {
    stop
    start
}

case "$1" in
  start)
    start
    ;;
  stop) 
    stop
    ;;
  restart|force-reload|reload)
    restart
    ;;
  condrestart)
    [ -f /var/lock/subsys/supervisord ] && restart
    ;;
  status)
    status supervisord
    RETVAL=$?
    ;;
  *)
    echo $"Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart}"
    exit 1
esac

exit $RETVAL
  1. 设置权限:chmod +x /etc/init.d/supervisor
  2. 设置开机启动: chkconfig supervisor on
启动命令
  1. 启动:service supervisor start
  2. 关闭: service supervisor stop
  3. 重启: service supervisor restart

配置Redis

在  /etc/supervisord.d 中创建redis.ini文件,内容如下


[program:redis]
user=root ;
command=/usr/local/redis/bin/redis-server /usr/local/redis/redis.conf ;
directory=/usr/local/redis/bin ;
startsecs=3 ;
autostart=true ;
autorestart=true ;
daemonize=no ;
stderr_logfile=/var/log/supervisor/redis.err.log ;
stdout_logfile=/var/log/supervisor/redis.log ;

如果出现 couldn't chdir to /usr/local/redis/bin,把/usr/local/redis/bin目录的权限改为755试试。