可以利用supervisor对Tomcat进行自启动管理
首先修改配置supervisor配置文件:
vim /etc/supervisor/supervisord.conf
跳到最后
[include]
files = /etc/supervisor/conf.d/*.ini
然后创建tomcat的配置文件:
[root@fbtest conf.d]$cat tomcat.ini
[program:tomcat]
command=/usr/local/tomcat/tomcat9/bin/catalina.sh run
stdout_logfile=/usr/local/tomcat/tomcat9/logs/catalina.out
stderr_logfile=/usr/local/tomcat/tomcat9/logs/catalina.out
environment=JAVA_HOME="/usr/local/jdk1.8.0_144",JAVA_BIN="/usr/local/jdk1.8.0_144/bin"
autorestart=false
startsecs=60
priority=1
stopasgroup=true
killasgroup=true
注意路径!
如果使用/usr/local/tomcat/tomcat9/bin/startup.sh
则需要修改startup.sh配置文件
将“exec "$PRGDIR"/"$EXECUTABLE" start "$@"”修改为:
exec "$PRGDIR"/"$EXECUTABLE" run "$@"
就可以利用startup.sh来启动tomcat,如下:
[root@fbtest conf.d]$cat tomcat.ini
[program:tomcat]
command=/usr/local/tomcat/tomcat9/bin/startup.sh
stdout_logfile=/usr/local/tomcat/tomcat9/logs/catalina.out
stderr_logfile=/usr/local/tomcat/tomcat9/logs/catalina.out
environment=JAVA_HOME="/usr/local/jdk1.8.0_144",JAVA_BIN="/usr/local/jdk1.8.0_144/bin"
autorestart=false
startsecs=60
priority=1
stopasgroup=true
killasgroup=true
因为使用catalina.sh run的方式启动是一种前台的启动方式,因此日志并不会输出到对应的tomcat日志里,当中有两句定义日志的指令,其中生效的是stderr_logfile,也就是说,是这条指令,使得尽管我们在前台启动的tomcat应用,依然会将日志输出到catalina.out里边。
然后就可以通过supervisorctl命令来管理tomcat自启动等:
supervisorctl start tomcat
supervisorctl stop tomcat
supervisorctl status tomcat
supervisorctl reload
本文介绍了如何利用Supervisor来管理Tomcat进程,包括修改配置文件、创建Tomcat的配置文件,以及调整Tomcat的启动脚本,使得日志能够正确输出。通过Supervisor的命令,可以方便地控制Tomcat的启动、停止和状态检查。

1671

被折叠的 条评论
为什么被折叠?



