我们在服务器上经常会使用到supervisor来管理进程。supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。
- 安装
yum install -y python-setuptools
easy_install supervisor
echo_supervisord_conf > /etc/supervisord.conf
mkdir /etc/supervisor
echo -e "[include]\nfiles = /etc/supervisor/*.conf" >> /etc/supervisord.conf
- 配置
#创建/etc/supervisor文件夹,配置文件放入/etc/supervisor目录,以conf结尾,例如redis.conf
[program:redis]
command = /usr/bin/redis-server /etc/redis.conf
autostart = true
startsecs = 5
autorestart = true
#自定义程序
[program:test-services]
directory = /data/test/test-server
command = /data/test/service/test-server
autostart = true
autorestart = true
user = root
#自定义
[eventlistener:tool]
command = sh run.sh start program
directory = /data/tool
events = PROCESS_STATE
autorestart = True
- 使用
#启动supervisord daemon
/usr/bin/supervisord -c /etc/supervisord.conf
#重新启动配置中的所有程序
supervisorctl reload
#更新新的配置到supervisord
supervisorctl update
#停止某一进程 (program_name=你配置中写的程序名称)
supervisorctl stop program_name
#启动某个进程(program_name=你配置中写的程序名称)
supervisorctl start program_name
#重启某一进程 (program_name=你配置中写的程序名称)
supervisorctl restart program_name
#停止全部进程
supervisorctl stop all
#查看正在守候的进程
supervisorctl
以上是supervisor的常用安装和配置方法。
版权声明:本文为linxi7原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。