Supervisor守护进程工具安装与使用

1、安装Python包管理工具

yum install python-setuptools

2、使用easy_install安装Supervisor

easy_install supervisor

3、配置Supervisor

#新建目录
mkdir /etc/supervisor

#指定配置文件
echo_supervisord_conf > /etc/supervisor/supervisord.conf

#编辑配置文件
vim /etc/supervisor/supervisord.conf

#在最下面添加项目文件夹配置
[include]
files = conf.d/*.conf

#创建项目文件夹
mkdir /etc/supervisor/conf.d

#创建system文件
vim /usr/lib/systemd/system/supervisord.service

#写入文件内容如下:
[Unit]
Description=Supervisor daemon
 
[Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf
ExecStop=/usr/bin/supervisorctl shutdown
ExecReload=/usr/bin/supervisorctl reload
KillMode=process
Restart=on-failure
RestartSec=42s
 
[Install]
WantedBy=multi-user.target

4、设置开机启动

systemctl enable supervisord

#验证
systemctl is-enabled supervisord

 5、测试

#测试php程序
public function test() {
    while(true){
        echo 666;
    }
}

#创建测试项目test.config
vim /etc/supervisor/conf.d/test.conf

#写入内容如下
[program: test]
#执行程序的命令
command=/www/server/php/73/bin/php /www/wwwroot/test/public/index.php /index/index/test
#程序意外退出是否自动重启
autorestart=true
#是否随supervisord启动而启动
autostart=true
#错误日志文件
stderr_logfile=/var/log/test.err.log
#输出日志文件
stdout_logfile=/var/log/test.out.log
#执行用户
user=root
#进程持续运行多久才认为是启动成功
startsecs=1
[supervisord]
logfile=/tmp/test.log

#启动supervisord
supervisord -c /etc/supervisor/supervisord.conf

#查看进程
supervisorctl

运行成功如下,此时杀死子进程,supervisor会重启该进程:

Supervisor守护进程工具安装与使用_第1张图片

6、常用命令

systemctl start supervisord #启动supervisord服务
systemctl stop supervisord  #关闭supervisord服务
supervisorctl start xxx  #启动单个进程
supervisorctl stop xxx #停止单个程序
supervisorctl restart xxx  #重启单个进程
supervisorctl reload  #重启所有进程
supervisorctl update  #重启新配置或有改动的进程
supervisorctl stop all  #停止全部进程

 

你可能感兴趣的:(Linux)