回音壁


一切爆发都有片刻的宁静/一切死亡都有冗长的回声


Supervisor


安装

sudo easy_install supervisor

生成默认配置文件

sudo mkdir /etc/supervisor
echo_supervisord_conf > /etc/supervisor/supervisor.conf

修改配置文件(“;”为注释符)

web管理

[inet_http_server]
port=0.0.0.0:9001
username=user
password=123

添加应用

; [program:xx]是被管理的进程配置参数,xx是进程的名称

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[program:xx]
command=/opt/apache-tomcat-8.0.35/bin/catalina.sh run ; 程序启动命令
autostart=true   ; 在supervisord启动的时候也自动启动
startsecs=10    ; 启动10秒后没有异常退出,就表示进程正常启动了,默认为1秒
autorestart=true  ; 程序退出后自动重启,可选值:[unexpected,true,false],默认为unexpected,表示进程意外杀死后才重启
startretries=3   ; 启动失败自动重试次数,默认是3
user=tomcat     ; 用哪个用户启动进程,默认是root
priority=999    ; 进程启动优先级,默认999,值小的优先启动
redirect_stderr=true ; 把stderr重定向到stdout,默认false
stdout_logfile_maxbytes=20MB ; stdout 日志文件大小,默认50MB
stdout_logfile_backups = 20 ; stdout 日志文件备份数,默认是10
; stdout 日志文件,需要注意当指定目录不存在时无法正常启动,所以需要手动创建目录(supervisord 会自动创建日志文件)
stdout_logfile=/opt/apache-tomcat-8.0.35/logs/catalina.out
stopasgroup=false  ;默认为false,进程被杀死时,是否向这个进程组发送stop信号,包括子进程
killasgroup=false  ;默认为false,向进程组发送kill信号,包括子进程

启动supervisor

sudo supervisord -c /etc/supervisor/supervisor.conf

命令行查看

sudo supervisorctl -c /etc/supervisor/supervisor.conf

查看进程

pstree -p|grep redis

unlink /tmp/supervisor.sock
修改supervisor.conf文件,修改到/var/run/及/var/log/目录
修改/etc/redis/redis.conf中daemonize为no