总结通过supervisor管理应用进程的知识点
一、安装、卸载
- 安装
>yum install python-setuptools
>easy_install pip
>pip install supervisor -- 或者-- easy_install supervisor
>mkdir /etc/supervisor/
#安装完成之后,在/etc/supervisor目录下生成配置文件
>echo_supervisord_conf>/etc/supervisor/supervisord.conf
- 卸载
>pip uninstall supervisor
二、修改配置文件
>vi /etc/supervisor/supervisord.conf
#把末尾的include去掉;添加配置文件
[include]
files = /etc/supervisor/conf.d/*.conf
#开启管理界面
[inet_http_server]
port=*:9001 ;127.0.0.1:9001需要修改为*:9001或者0.0.0.0:9001
添加每个应用独立的配置文件,供supervisor加载
>vi /etc/supervisor/conf.d/test.conf
#应用配置文件内容
[program:springboot.test]
command=/bin/bash -c "/root/java/jdk1.8.0_191/bin/java -jar springboot.test-1.0.0.jar"
directory=/var/www/test
autorestart=false #进程死亡后是否自动拉起来
stderr_logfile=/var/log/test/err.log
stdout_logfile=/var/log/test/out.log
environment=ASPNETCORE_ENVIRONMENT=Development
user=root
stopsignal=INT
三、启动
>supervisord -c /etc/supervisor/supervisord.conf
设置开机启动
>vi /etc/rc.d/sh/test.sh
#!/bin/bash
# 开机启动supervisor
supervisord -c /etc/supervisor/supervisord.conf
#然后赋予执行权限
>chmod +x /etc/rc.d/sh/test.sh
>vi /etc/rc.d/rc.local
>touch /var/lock/subsys/local
#开机启动supervisor脚本
/etc/rc.d/sh/test.sh
#赋予执行权限
>chmod +x /etc/rc.d/rc.local
四、常用命令
- 启动
supervisord -c /etc/supervisor/supervisord.conf
- 停止
supervisorctl shutdown
- 更新新的配置到supervisord
supervisorctl update
- 重新启动配置中的所有程序
supervisorctl reload
- 启动某个进程(program_name=你配置中写的程序名称)
supervisorctl start program_name
- 查看正在守护的进程
supervisorctl
- 停止某一进程 (program_name=你配置中写的程序名称)
pervisorctl stop program_name
- 重启某一进程 (program_name=你配置中写的程序名称)
supervisorctl restart program_name
- 停止全部进程
supervisorctl stop all