Supervisor|基于centos7安装部署supervisor教程分享,值得收藏

概述在 web 应用部署到线上后 , 需要保证应用一直处于运行状态 , 在遇到程序异常、报错等情况 , 导致 web 应用终止时 , 需要保证程序可以立刻重启 , 继续提供服务 。 因为最近系统经常GG , 挂的有点莫名其妙 , 所以领导说需要一个工具 , 时刻监控 web 应用的运行情况 , 管理该进程 。
刚好Supervisor 就是解决这种需求的工具 , 可以保证程序崩溃后 , 重新把程序启动起来等功能 。 下面介绍下部署教程 , 以下基于centos7.3系统 。
相关概念supervisor:要安装的软件的名称 。
supervisord:装好supervisor软件后 , supervisord用于启动supervisor服务 。
supervisorctl:用于管理supervisor配置文件中program 。
Supervisor|基于centos7安装部署supervisor教程分享,值得收藏文章插图
使用yum命令安装(需能外网访问)# yum install epel-release# yum install -y supervisor# systemctl enable supervisord # 开机自启动# systemctl start supervisord # 启动supervisord服务# systemctl status supervisord # 查看supervisord服务状态# ps -ef|grep supervisord # 查看是否存在supervisord进程
Supervisor|基于centos7安装部署supervisor教程分享,值得收藏文章插图
Supervisor|基于centos7安装部署supervisor教程分享,值得收藏文章插图
配置Supervisor #vi /etc/supervisord.d/tomcat8090.ini
[program:epms] ; 程序名称 , 在 supervisorctl 中通过这个值来对程序进行一系列的操作autorestart=True ; 程序异常退出后自动重启autostart=True ; 在 supervisord 启动的时候也自动启动startsecs=10 ; 启动10秒后没有异常退出 , 就表示进程正常启动了 , 默认为1秒priority=1 ; 进程启动优先级 , 默认999 , 值小的优先启动redirect_stderr=True ; 把 stderr 重定向到 stdout , 默认 falsecommand=/home/tomcat8090/bin/catalina.sh run ; 启动命令 , 与手动在命令行启动的命令是一样的user=root ; 用哪个用户启动stdout_logfile_maxbytes=500MB ; stdout 日志文件大小 , 默认 50MBstdout_logfile_backups=20 ; stdout 日志文件备份数stdout_logfile = /home/tomcat8090/logs/catalina.out配置如下:
Supervisor|基于centos7安装部署supervisor教程分享,值得收藏文章插图
重启supervisor配置后需重启supervisor
#ps -ef|grep supervisor |grep -v 'grep' |awk '{print $2}'|xargs kill -9#supervisord -c /etc/supervisord.conf#supervisorsupervisor> status
Supervisor|基于centos7安装部署supervisor教程分享,值得收藏文章插图
测试过停止tomcat会自动拉起 。
总结最后有个小问题 , 如果不先停止所有管理进程 , 只是杀supervisor进程然后直接重启会产生多个管理进程 , 因为之前的tomcat进程是没有杀掉的 , 这时候看日志就会有端口冲突的问题了 。
另外一个问题是一杀进程这个supervisor就自动重启tomcat了 , 那我之前写的自动部署tomcat脚本(每次杀掉进程替换文件)不就冲突了?这个问题还在考虑怎么解决中 。
最后一个问题就是集群化管理了 , 如果有几百台服务器需要控制的话是可以考虑一下 supervisord-monitor这个集群化解决方案 。
【Supervisor|基于centos7安装部署supervisor教程分享,值得收藏】后面会分享更多devops和DBA方面的内容 , 感兴趣的朋友可以关注一下~
Supervisor|基于centos7安装部署supervisor教程分享,值得收藏文章插图