Linux 定时重启 Tomcat、重启Keepalived

1、在 tomcat 目录新建一个.sh 文件: vi restartTomcat.sh   2、输入内容: …

1、在 tomcat 目录新建一个.sh 文件:

vi restartTomcat.sh

 

2、输入内容:

Linux 定时重启 Tomcat、重启Keepalived-1
#!/bin/bash
# author: Linnuo
# date: 2019-05-31
# Filename: restartTomcat.sh
# Description: 重启tomcat服务

# 声明环境变量,可重复使用 
export LANG=zh_CN.UTF-8
export JAVA_HOME=/usr/java/jdk1.8.0_161
export JRE_HOME=${JAVA_HOME}/jre
export TOMCAT_HOME=/tomcat/apache-tomcat-9.0.17/

# 输出开始时间
echo "[$(date +'%F %T')] >>> Tomcat begin to restart."

# 关闭tomcat服务
${TOMCAT_HOME}/bin/shutdown.sh
 
# Kill all remaining processes 杀掉所有残留进程,不杀掉会占用系统资源
pidList=$(ps aux | grep ${TOMCAT_HOME} | grep -v grep | awk '{print $2}')

if [ "${pidList}" != "" ]
then
    echo "残留的进程号:${pidList}";
    for pid in $pidList; do
        kill -9 $pid
        echo "[$(date +'%F %T')] >>> Kill the process [$pid] successfully."
    done
else
    echo "无 残留的进程号";
fi

# 启动tomcat服务
${TOMCAT_HOME}/bin/startup.sh

# 获取重新启动后的tomcat服务的进程号
pidList2=$(ps aux | grep ${TOMCAT_HOME} | grep -v grep | awk '{print $2}')
if [ "${pidList2}" != "" ]
then
    echo "启动后的进程号:${pidList2}";
    echo "[$(date +'%F %T')] >>> Tomcat restart complete."
    echo -e "本次tomcat成功重启 \n\n"
else
    echo "本次tomcat服务启动出错,请查看/logs/catalina.out日志文件"
fi

# 重启keepalived服务
systemctl restart keepalived

# 查看状态
service keepalived status
Linux 定时重启 Tomcat、重启Keepalived-1

JAVA_HOME、TOMCAT_HOMT 根据自己路径输入,保存。

 

3、给.sh 文件赋予执行权限:

chmod +x restartTomcat.sh

 

4、运行:

./restartTomcat.sh

Linux 定时重启 Tomcat、重启Keepalived-2

 

5、配置定时任务 crond:

vi /etc/crontab

 

6、最下面添加红色内容:

Linux 定时重启 Tomcat、重启Keepalived-1
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed

25 0 */2 * *  root /root/restartTomcat.sh >> /root/restartLog.txt

# 每两天的 00:25 执行一次 - 用户 - 执行的脚本路径 - 执行信息的输出位置 - 执行信息存放的文件名
Linux 定时重启 Tomcat、重启Keepalived-1
保存退出后,系统自动读取加载,间隔到点,会看见 root 目录下多了个存放执行信息的文件 restartLog.txt
至此,Linux 中 Tomcat\Keepalived 定时重启的功能完成.

TIPS:
  1、如果定时任务未生效,重启即可
  2、如果定时任务只执行shutdown、未执行start,将shutdown、start分开写即可

为您推荐

港服(Server.HK)原创:如何在tomcat中如何配置域名解析

在Tomcat中配置域名解析涉及两个主要步骤:配置 DNS 记录和配置 Tomcat 的虚拟主机。 配置DNS记录: 前...

Tomcat 服务器安装 SSL证书,实现 HTTP 自动跳转 HTTPS

本文以阿里云为例:   一、下载证书 1.1、登录阿里云:https://www.aliyun.com/   ...

Tomcat 禁用不安全的 HTTP 请求模式及测试

WebDAV (Web-based Distributed Authoring and Versioning) 一种基于...

WEB安全:Tomcat 只可通过域名访问,禁止通过 IP 访问

服务器为什么要禁止通过IP直接访问?   1、若公布于外网的服务器IP地址未备案,就有可能被工信部查封。这样备...

tomcat服务器怎么做301重定向

tomcat服务器做301重定向的方法: 1.借助UrlRewriteFilter软件,下载命令: wget http:...
返回顶部