tomcat开机启动及shell脚本监控服务

tomcat开机自启方案及验证

一、修改tomcat/bin下的catalina.sh新增JAVA_HOME、JRE_HOME

JAVA_HOME=/usr/local/jdk1.8.0_162   # jdk路径
JRE_HOME=$JAVA_HOME/jre

二、/usr/lib/systemd/system/新增tomcat.service文件
内容如下:

[Unit]
Description= tomcat8.5.9 service
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=oneshot
ExecStart=/usr/local/tomcat8.5/bin/startup.sh #tomcat startup.sh路径
ExecStop=/usr/local/tomcat8.5/bin/shutdown.sh   #tomcat shutdown.sh路径
ExecReload=/bin/kill -s HUP $MAINPID
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target

三、设置开机自启动

systemctl daemon-reload
systemctl enable tomcat #开机自启动

四、指令验证

systemctl list-unit-files |grep tomcat

出现下图所示,即为成功。


image.png

五、重启机器验证
重启机器后,直接输入指令

ps -ef|grep tomcat

出现如下图所示,即为成功。


image.png

至此,tomcat配置服务器开机自启动成功。

Tomcat守护进程

一、编写shell脚本
vi /usr/local/001tomcatcheck.sh

#!/bin/bash
#tomcat守护进程脚本
TomcatID=`ps -ef|grep "/usr/local/tomcat8.5"|grep -v 'grep'|head -1|awk '{print $2}'`
Weburl=http://localhost:8080/
# tomcat 监控日志存放位置
TomcatMonitorlog=/usr/local/tomcat8.5/logs/0001.log
# tomcat 状态存放路径
statusFile=/usr/local/tomcat_status.txt
#tomcat 启动
start(){
/usr/local/tomcat8.5/bin/startup.sh
}
Monitor(){
if [ $TomcatID ];then
echo "--------->>tomcat监控开始<<----------"
echo $(date +"%Y-%m-%d %T")
echo "The TomcatID is $TomcatID"
TomcatServerCode=`curl -I $Weburl > $statusFile`
Status=`cat $statusFile|head -1|awk '{print $2}'`
if [ $Status -eq 200 ];then
echo "服务正常访问"
else
echo "服务不能访问重启tomcat,关闭tomcat"
kill -9 $TomcatID
sleep 2
echo "启动tomcat"
start
fi
else
echo "未检测到tomcat8.5进程,启动tomcat"
start
fi
echo "接收"
}
Monitor >> $TomcatMonitorlog

2、001tomcatcheck.sh赋执行权

 Chmod +x 001tomcatcheck.sh

3、linux定时任务添加

crontab -e

将该脚本添加到定时任务

*/1 * * * * /usr/local/001tomcatcheck.sh

每分钟执行一次。
4、查看定时任务是否开机启动

systemctl list-unit-files |grep crond
image.png

5、若crond.service未设置开机启动则执行以下命令设置开机启动

systemctl enable crond

重复4步骤,查看定时任务是否开机启动。

6、验证守护进程

关闭tomcat,脚本执行后,查看脚本执行情况。

image.png

7、查看tomcat是否启动

ps -ef|grep tomcat

如图,则表示tomcat启动成功。


image.png

8、tomcat启动,服务假死,会一直重启tomcat,直到服务恢复正常

image.png

9、重启服务器测试tomcat开机启动,以及crond是否开机启动,此步骤可省


image.png

服务器重启后tomcat自动启动,脚本打印执行日志,则tomcat开机自启以及守护进程配置成功。


image.png

image.png

你可能感兴趣的:(tomcat开机启动及shell脚本监控服务)