方式1:
yum install -y epel-release
yum install -y supervisor
启动
systemctl start supervisord
其他命令
supervisorctl reload #重启 修改了supervisord.conf ,需要执行来重新加载配置文件
supervisorctl status #查看所有进程的状态
supervisorctl stop demo #停止
supervisorctl start demo #启动
supervisorctl restart demo #重启
supervisorctl update #配置文件修改或新增后可以使用该命令加载新的进程
supervisorctl stop all 停止所有应用
supervisorctl restart all #重启所有应用
方式 2:
1、安装supervisor
pip3 install supervisor
2、新建文件夹
mkdir /etc/supervisord.d
3、生成supervisor.conf配置
echo_supervisord_conf > /etc/supervisord.conf
4、启动supervisor
/usr/local/python3/bin/supervisord -c /etc/supervisord.conf
5、例子:配置supervisor管理nginx进程
vim /etc/supervisord.conf
去掉注释
[include]
files=/etc/supervisord.d/*.conf
配置supervisor管理nginx的配置文件
vim /etc/supervisord.d/nginx_test.conf
[program:nginx]
command=/usr/sbin/nginx
stdout_logfile=/tmp/nginx.log
stderr_logfile=/tmp/nginx_err.log
autostart=true
autorestart=true
startsecs=10stopwaitsecs=50 #这里最好配置
priority=1
6、supervisor不能管理daemon进程,nginx 是daemon进程,如果要管理,需要在nginx.conf配置文件的http标签外增加 daemon off; 此处只是测试适用
# 修改nginx配置
[root@auto super]# vim /etc/nginx/nginx.conf
user nginx;
worker_processes 1;
daemon off;
events{
worker_connections1024;
}
http{.......
7、重启nginx,supervisor
nginx -s reload
supervisorctl reload
其他命令
supervisorctl #查看所有子进程的状态
supervisorctl reload #重启 修改了supervisord.conf ,需要执行来重新加载配置文件
supervisorctl status #查看所有进程的状态
supervisorctl stop demo #停止
supervisorctl start demo #启动
supervisorctl restart demo #重启
supervisorctl update #配置文件修改或新增后可以使用该命令加载新的进程
8、web界面管理supervisor进程
修改配置文件,然后重启vim /etc/supervisor.conf
#去掉注释,下面是修改部分
[inet_http_server] ; inet (TCP) server disabled by default
port=192.168.10.66:9001 ; ip_address:portspecifier,*:portfor all iface
username=user ;default isnousername(openserver)
password=123 ;default isnopassword(openserver)
9、调整进程最大文件打开数
参考:https://www.cnblogs.com/gongxianjin/p/17298503.html
vim /etc/supervisor.conf
[supervisord]
minfds=100000 ; 可以打开的文件描述符的最小值,默认 1024
minprocs=100000 ; 可以打开的进程数的最小值,默认 200
查看进程限制
# 7054是进程id
cat /proc/7054/limits