Linux安装(二十一)之supervisorctl安装
supervisorctl安装介绍
Supervisor 是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,不再需要自己写shell脚本来控制
安装
yum install -y epel-release && yum install -y supervisor
开机自启supervisord
systemctl enable supervisord
启动supervisord
systemctl start supervisord
检查启动状态
systemctl status supervisord
开启web访问
vim /etc/supervisord.conf
将如下图中信息改为下下图中信息
去掉注释,修改ip端口,用户名,密码
重新加载配置文件
supervisorctl reload
nginx映射配置
server { listen 80; server_name test-xxx.xxx.com;//自己的域名,写localhost也可以 location /supervisor/{ proxy_pass http://192.168.9.102:9001/; } }
查看配置文件
cat supervisord.conf
新增ini文件,让supervisorctl管理
cd /etc/supervisord.d/
新增文件
vim project-web.ini
内容如下
[program:project-web] directory = /home/project ;启动目录 command = java -jar project-web.jar ;启动命令 autostart = true ;在supervisord启动的时候也启动 startsecs = 5 ;启动5秒后没有异常退出,就当作已经正常启动了 autorestart = true ;程序异常退出后自动重启 startretries = 3 ;启动失败自动重试次数,默认是3 user = root ;哪个用户启动 redirect_stderr = true ;把stderr重定向到stdout,默认false stdout_logfile_maxbytes = 20MB ;stdout日志文件大小,默认50MB stdout_logfile_backups = 20 ;stdout日志文件备份数 stdout_logfile = /home/project/logs/project.log ;stdout日志文件,需要手动创建/home/project/logs目录
重启
supervisorctl reload
启动project-web进程
supervisorctl start project-web
1、开启端口9001
firewall-cmd --zone=public --add-port=9001/tcp --permanent
2、重启防火墙
firewall-cmd --reload
查看已经开放的端口:
firewall-cmd --list-ports