supervisor安装与配置

supervisor

安装:(centos)

通过python安装(python版本应该是2.x)
pip install supervisor

配置:

supervisord -c /etc/supervisor/supervisord.conf # 生成配置文件
vim /etc/supervisord.conf  # 进入文件最底部,修改内容  

;[include]
;files = relative/directory/.ini
修改为:
[include]
files=/etc/supervisor/
.conf
(记得去掉前边的; 这个地方配置的是启动supervisor的时候从哪里读取配置文件)

进入刚刚设置的房配置文件的目录下,新建一个项目的配置文件

vi test.conf #新建一个config文件,配置要启动的项目

[program:java-spider]
command=java -jar appdev-2.0.1-SNAPSHOT.jar ;项目启动命令
directory=/home/project/javaPro/java-spider ;项目所在的目录,会先进入到这个目录,然后执行command
process_name=%(process_num)02d ;默认为 %program_name)s,即 [program:x] 中的 x 这个是进程,如果我们下面的numprocs参数为1的话,就不用管这个参数了,它默认值%(program_name)s也就是上面的那个program冒号后面的
autostart=true ;是否自动启动
autorestart=true ;程序意外退出是否自动重启
startsecs=1 ;自动重启间隔
startretries=20 ;当进程启动失败后,最大尝试启动的次数。。当超过3次后,supervisor将把此进程的状态置为FAIL 默认值为3
redirect_stderr=true ;如果为true,则stderr的日志会被写入stdout日志文件中 理解为重定向输出的日志
user=root ;这个参数可以设置一个非root用户,当我们以root用户启动supervisord之后。我这里面设置的这个用户,也可以对supervisord进行管理
stdout_logfile=/data/supervisorLogs/java-spider.out.log ;日志输出,如果设置日志在data目录下,需要为supervisorLogs设置权限 sudo chmod 777 supervisorLogs 就可以
stderr_logfile=/data/supervisorLogs/java-spider.err.log ;error日志输出

配置好后就可以启动supervisor了:

cd /etc/supervisor  #进入supervisord.conf所在目录
sudo supervisord -c ./supervisord.conf
sudo supervisorctl reload

error:

之前启动的进程还没有彻底关掉,需要kill
Error: Cannot open an HTTP server: socket.error reported errno.EADDRNOTAVAIL (99)

常用命令:

supervisorctl stop test  #终止特定的进程
supervisorctl stop all   #终止所有进程
supervisorctl start test  #开启特定的进程
supervisorctl start all   #开启所有进程
sudo supervisorctl status #查看进程状态

你可能感兴趣的:(系统和软件)