您的位置:首页 > 运维架构 > Tomcat

linux下监控tomcat自动重启

2018-03-30 16:36 316 查看
很多时候,当linux服务器挂了后重启后,tomcat服务器却还没重新启动导致项目网站无法访问,下面来解决一下这个问题
1.使用yum安装crontab服务,这是一个定时器服务,可以自己设定时间,多久监控一下tomcat服务器是不是挂了,如果挂了,它会让它重新启动起来。
安装命令:yum install vixie-cron

安装完成后,使用一下命令看看:
/sbin/service crond start     //启动服务
/sbin/service crond stop     //关闭服务
/sbin/service crond restart     //重启服务
/sbin/service crond reload      //重新载入配置
查看crontab服务状态:service crond status

手动启动crontab服务:service crond start
先启动crond 服务,然后再查看status,如下图使用:service crond status查看,is running说明正常running



2.查看crontab服务是否已设置为开机启动,执行命令:ntsysv
在linux上面直接输入命令后,会出现如下界面:



上面为服务列表,可以看到crond的服务,带*号的说明服务是开机启动的,你可以按键盘的上下键选择服务,然后使用空格键设置带*号or不带,也就是是否开机启动,然后按tab键可以从上面的服务列表切换到下面的确定和取消,同样是按空格键选择确定和取消。
3.写shell监控语句#!/bin/sh
basePath=$(cd $(dirname $0);pwd)
echo ""
echo "####################begin check####################"
for tomcat in $(ls -F|grep /$|grep tomcat);
do
if [ -z "$(ps -ef|grep $basePath/$tomcat |grep java)" ];then
echo "$tomcat is not run!"
sh $tomcat/bin/startup.sh &
echo `date +'%Y-%m-%d %H:%M:%S'` "$tomcat start!" >> $basePath/check.log
fi
done;
echo "####################end check####################"
echo ""这个是一个demo的监控语句,各位觉得不好也可以重新写。touch一个xxx.sh文件,文件名自己取,我的是叫chec
4000
k.sh,然后将上面语句写到里面去。
然后将其文件放在和你的tomcat同一个文件目录下面,如下图:



4.将shell执行程序加到定时器里面去,也就是上面安装的那个crontab服务。
执行命令:crontab -e    然后会进入到一个文本编辑状态里面去,然后将其下面语句写到当前进入的这个文本里面去
命令为:*/1 * * * * sh /usr/local/tomcat/check.sh
命令前面的1为时间,也就是1分钟,/usr/local/tomcat/check.sh是你写的shell监控程序check.sh文本的地址,copy完这个命令后就可以了保存退出了。然后现在全部都ok了,启动crontab服务让它运行去吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: