专栏首页散尽浮华分享一例脚本发版和tomcat重启脚本

分享一例脚本发版和tomcat重启脚本

线上有个网站业务部署在tomcat上,由于频繁上线修改,需要经常启动tomcat。 tomcat服务自带的bin下没有重启脚本,下面分享一例脚本发版和tomcat重启脚本:

1)现将业务代码从svn里下载到本地,首次下载后,后续就使用svn update更新代码即可。 发版脚本:

[root@redmine ~]# cd /Data/webroot_svncode/xqsj_app/banshanbandao/bsbd_war/
[root@redmine bsbd_war]# ls
ROOT.war


[root@redmine xqsj_app]# cat up_pub_online_banshanbandao.sh 
#!/bin/bash
REMOTE_SERVER_IP="192.168.1.106 192.168.1.220"
DEST_DIR="/Data/app/tomcat-7-banshanbandao/webapps/"
cd /Data/webroot_svncode/xqsj_app/banshanbandao/bsbd_war/

/usr/bin/svn update

for SERVER in ${REMOTE_SERVER_IP};do
/usr/bin/ssh -p22 ${SERVER} "rm -rf /Data/app/tomcat-7-banshanbandao/webapps/*";
/usr/bin/rsync -av -e "/usr/bin/ssh -p22" --rsync-path="/usr/bin/rsync" --progress /Data/webroot_svncode/xqsj_app/banshanbandao/bsbd_war/ROOT.war ${SERVER}:${DEST_DIR};
sleep 15
/usr/bin/ssh -p22 ${SERVER} "/bin/sh /Data/app/tomcat-7-banshanbandao/start.sh";
done 

2)目标机器192.168.1.106

[root@web1 ~]# cd /Data/app/tomcat-7-banshanbandao/webapps/
[root@web1 webapps]# ls
ROOT  ROOT.war

tomcat重启脚本(脚本中将dbconfig.properties配置文件事先准备好,以后每次上线后,配置文件保持不变!因为svn里上线代码中的配置都是开发基于本机的配置)

[root@web1 webapps]# cat /Data/app/tomcat-7-banshanbandao/start.sh
#!/bin/bash

cd /Data/app/tomcat-7-banshanbandao/
kill -9 `ps -ef|grep java|grep -v grep|grep banshanbandao |awk -F" " '{print $2}'`
rm -rf temp/*
rm -rf work/*
\cp -rf dbconfig.properties webapps/ROOT/WEB-INF/classes/


export JAVA_HOME="/usr/java/jdk1.7.0_79"
/bin/sh bin/startup.sh

--------------------------------------------------------------------------------------- 上述脚本中的: kill -9 `ps -ef|grep java|grep -v grep|grep banshanbandao |awk -F" " '{print $2}'` 可以替换为: ps -ef|grep java|grep -v grep|grep banshanbandao |awk -F" " '{print $2}'|xargs kill -9 ---------------------------------------------------------------------------------------

重启tomcat

[root@web1 ~]# ps -ef|grep tomcat
root      5759     1  0 Oct31 ?        00:20:09 /usr/java/jdk1.7.0_79/bin/java -Djava.util.logging.config.file=/Data/app/tomcat-7-banshanbandao/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -server -Xms1024m -Xmx2048m -XX:MaxNewSize=512m -XX:PermSize=2048M -XX:MaxPermSize=2048m -Djava.endorsed.dirs=/Data/app/tomcat-7-banshanbandao/endorsed -classpath /Data/app/tomcat-7-banshanbandao/bin/bootstrap.jar:/Data/app/tomcat-7-banshanbandao/bin/tomcat-juli.jar -Dcatalina.base=/Data/app/tomcat-7-banshanbandao -Dcatalina.home=/Data/app/tomcat-7-banshanbandao -Djava.io.tmpdir=/Data/app/tomcat-7-banshanbandao/temp org.apache.catalina.startup.Bootstrap start
root     19549 16881  0 18:06 pts/0    00:00:00 grep --color=auto tomcat

[root@web1 ~]# ps -ef|grep java|grep -v grep|grep banshanbandao |awk -F" " '{print $2}'
5759

[root@web1 ~]# /bin/sh -x /Data/app/tomcat-7-banshanbandao/start.sh 
+ cd /Data/app/tomcat-7-banshanbandao/
++ ps -ef
++ grep java
++ grep -v grep
++ grep banshanbandao
++ awk '-F ' '{print $2}'
+ kill -9 19707
+ rm -rf 'temp/*'
+ rm -rf work/Catalina
+ cp -rf dbconfig.properties webapps/ROOT/WEB-INF/classes/
+ export JAVA_HOME=/usr/java/jdk1.7.0_79
+ JAVA_HOME=/usr/java/jdk1.7.0_79
+ /bin/sh bin/startup.sh
Using CATALINA_BASE:   /Data/app/tomcat-7-banshanbandao
Using CATALINA_HOME:   /Data/app/tomcat-7-banshanbandao
Using CATALINA_TMPDIR: /Data/app/tomcat-7-banshanbandao/temp
Using JRE_HOME:        /usr/java/jdk1.7.0_79
Using CLASSPATH:       /Data/app/tomcat-7-banshanbandao/bin/bootstrap.jar:/Data/app/tomcat-7-banshanbandao/bin/tomcat-juli.jar
Tomcat started.

[root@web1 ~]# ps -ef|grep tomcat
root     19859     1 99 18:07 pts/0    00:00:05 /usr/java/jdk1.7.0_79/bin/java -Djava.util.logging.config.file=/Data/app/tomcat-7-banshanbandao/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -server -Xms1024m -Xmx2048m -XX:MaxNewSize=512m -XX:PermSize=2048M -XX:MaxPermSize=2048m -Djava.endorsed.dirs=/Data/app/tomcat-7-banshanbandao/endorsed -classpath /Data/app/tomcat-7-banshanbandao/bin/bootstrap.jar:/Data/app/tomcat-7-banshanbandao/bin/tomcat-juli.jar -Dcatalina.base=/Data/app/tomcat-7-banshanbandao -Dcatalina.home=/Data/app/tomcat-7-banshanbandao -Djava.io.tmpdir=/Data/app/tomcat-7-banshanbandao/temp org.apache.catalina.startup.Bootstrap start
root     19883 16881  0 18:07 pts/0    00:00:00 grep --color=auto tomcat

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • linux下安装php的imagick扩展模块(附php升级脚本)

    imagick是一个PHP的扩展,是一套软件系列,用ImageMagick提供的API来进行图片的创建与修改,不过这些操作已经包装到扩展imagick中去了,最...

    洗尽了浮华
  • centos6下ActiveMQ+Zookeeper消息中间件集群部署记录

    由于最近一个项目并发请求压力比较大,所以考虑改进架构,引入消息中间件集群作为一个缓冲消息队列,具体需求: 1)将大量的WebService请求报文发送到mq集群...

    洗尽了浮华
  • Nginx range filter模块数字错误漏洞修复 (Nginx平滑升级) - 运维笔记

    对线上生产环境服务器进行漏洞扫描, 发现有两台前置机器存在Nginx range filter模块数字错误漏洞, 当使用nginx标准模块时,攻击者可以通过发送...

    洗尽了浮华
  • tomcat部署应用时设置context path为空的上下文路径问题

    在<Context>配置中包含如下信息: 1. 配置docBase值为:docBase="app"或者docBase="app.war"; 2. path为空,...

    2Simple
  • Cocospod 升级到指定版本

    ZY_FlyWay
  • 【腾讯云CDB】源码分析·MySQL online ddl日志回放解析

    ddl包含了copy和inplace方式,对于不支持online的ddl操作采用copy方式。对于inplace方式,mysql内部以“是否修改记录格式”为基准...

    腾讯云数据库 TencentDB
  • Online DDL过程介绍

    腾讯数据库技术
  • 【吴恩达专访】我所理解的人工智能,创新和失败

    【新智元导读】作为人工智能界的标志性人物,吴恩达在2014年加入百度后受到了国内相关领域的强烈关注。这篇霍芬顿邮报(Huffington Post)对吴恩达的长...

    新智元
  • 百度以侵犯无人车商业机密为由起诉前高管王劲

    腾讯《一线》作者 韩依民 百度的无人车发展路线纠纷今日开始上演续集。 今日早间,据知产力报道,百度以侵犯商业秘密为由,将其前自动驾驶事业部总经理王劲及王劲所经营...

    企鹅号小编
  • 处理Apache日志的Bash脚本

    去年一年,我写了将近100篇网络日志。 现在这一年结束了,我要统计"访问量排名",看看哪些文章最受欢迎。(隆重预告:本文结尾处将揭晓前5名。) ? 以往,我用的...

    ruanyf

扫码关注云+社区

领取腾讯云代金券