Supervisor 是基于 Python 的进程管理工具,可以帮助我们更简单的启动、重启和停止服务器上的后台进程,是 Linux 服务器管理的效率工具。
wget https://bootstrap.pypa.io/ez_setup.py -O - | python \
&&easy_install supervisor \
&&echo_supervisord_conf > /etc/supervisord.conf \
[监视一个程序]
vim /etc/supervisord.conf
[include]
files = /etc/supervisor/*.ini
在 /etc/supervisor/ 目录下建立 redis.ini 文件
[program:redis]
#command=systemctl start redis.service
command=/usr/bin/redis-server /etc/redis.conf
autorstart=true
autorestart=true
stdout_logfile=/tmp/supervisor.log
启动:
supervisord
停止:
ps -ef| grep sup |grep -v grep |awk '{ print $2 }' |xargs kill -9
supervisorctl 命令介绍
停止某一个进程,program_name 为 [program:x] 里的 x
supervisorctl stop program_name
启动某个进程
supervisorctl start program_name
重启某个进程
supervisorctl restart program_name
结束所有属于名为 groupworker 这个分组的进程 (start,restart 同理)
supervisorctl stop groupworker:
结束 groupworker:name1 这个进程 (start,restart 同理)
supervisorctl stop groupworker:name1
停止全部进程,注:start、restart、stop 都不会载入最新的配置文件
supervisorctl stop all
载入最新的配置文件,停止原有进程并按新的配置启动、管理所有进程
supervisorctl reload
根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启
supervisorctl update