线上有个网站业务部署在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 updatefor 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/bashcd /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

分享一例脚本发版和tomcat重启脚本相关推荐

  1. Tomcat重启脚本

    概述 软件开发过程中,在Linux环境,使用tomcat服务器,会频繁的进行重启操作. 手动操作步骤 1.查找tomcat进程 ps -ef|grep tomcat 2.kill tomcat进程 k ...

  2. linux定时重启tomcat的脚本,Linux系统中的tomcat定时重启脚本

    1.Linux下tomcat重启脚本 [root@]# vi test.sh #!/bin/sh export JAVA_HOME=/usr/java/j2sdk1.4.2_06/ pid=`ps - ...

  3. linux中程序定时重启脚本,linux下通过脚本实现自动重启程序的方法

    烈火建站学院(LieHuo.Net)转载无论什么程序都不可能完美无缺,理论上,任何程序都有 Core Dump 的一天,正式运营的程序,尤其是服务器程序,一旦 Core Dump ,后果不堪设想,有过 ...

  4. tomcatSupplement(1)tomcat启动脚本分析(以Windows平台为例)

    [0]README 1)本文部分文字描述转自:"深入剖析tomcat",旨在学习"tomcat启动脚本分析"的相关知识: 2)for tomcat4 start ...

  5. 运维-jenkins发版执行远程脚本连不上ssh

    文章目录 1.背景 2.分析 & 解决 2.1 服务器环境 2.2 现象 3.总结 1.背景 本次案例是出现在公司的预发布环境发版中.java编译打包->docker镜像构建->镜 ...

  6. [分享]运维分享一一阿里云linux系统mysql密码修改脚本

    [分享]运维分享一一阿里云linux系统mysql密码修改脚本     大象吃豆子 级别: 小白 发帖 12 云币 27 加关注 写私信 只看楼主 更多操作楼主  发表于: 2014-09-30 编写 ...

  7. K8s上的Go服务怎么扩容、发版更新、回滚、平滑重启?教你用Deployment全搞定!

    经过前面不少文章的铺垫,终于可以写这个大家都感兴趣的话题了,在前面两篇文章,我们讲了Kubernetes里的 Pod和 副本集ReplicaSet (RS) 这两个API对象.知道了Pod是Kuber ...

  8. 服务器打包文件工具,项目增量发版之全自动打包流程(patch-generator-desk打包软件)...

    在我们程序员工作中往往伴随着频繁加班/通宵发版的过程中,对于小型项目或是只有当台服务器部署的这些项目,我们仅仅用代码全量发布,将开发工具工作空间的项目下的目录挨个用ftp或者其它工具上传替换就行.但是 ...

  9. 客户端单周发版下的多分支自动化管理与实践

    背景 目前,互联网产品呈现出高频优化迭代的趋势,需求方希望尽早地看到结果,并给予及时反馈,所以技术团队需要用"小步快跑"的姿势来做产品,尽早地交付新版本.基于以上背景,美团客户端研 ...

最新文章

  1. 基于form的身份验证怎样设置一个特例(使某页不需要验证)
  2. PyObject_CallMethod
  3. undefined symbol: sqlite3_open_v2
  4. python3.7安装教程mac_mac中怎么安装python3
  5. 影驰名人堂送的机器人_玩转GTX 1080Ti名人堂显示屏 影驰全新魔盘使用教程
  6. Android—屏幕适配和卡顿优化
  7. 用位组函数来计算每个月中用户访问网页的天数。
  8. kotlin dsl_Spring Webflux – Kotlin DSL –实现的演练
  9. [洛谷P4819][中山市选]杀人游戏
  10. 每日一题 2020.05.12
  11. Django,js,html数据传输
  12. js事件委托或事件代理
  13. JavaScript面向对象学习小结
  14. nero burning rom 2021绿色版安装及使用教程
  15. 药易通采购过账存储过程ts_c_BillAudit 分析
  16. 02:二分法求函数的零点
  17. APSINx010HC系列射频模拟信号发生器—输出高达6.1GHz
  18. 最伟大IT人物10强出炉 乔布斯第一盖茨第三
  19. 【钛媒体】社交网络广告怎么做才不让人反感?
  20. 【P4lang】P4数据平面编程实验basic_tunnel

热门文章

  1. RabbitMQ 七种队列模式应用场景案例分析(通俗易懂)
  2. Spring中的18个注解,你会几个?
  3. Linux下日志文件过大解决方案
  4. 数据项目总结 -- 蛋壳公寓租金分析!
  5. 【pandas学习笔记】Series
  6. 辞去美国终身教职回国的帅教授,拟增列为顶尖985大学博导
  7. CVPR2021 | 视觉 Transformer 的可视化
  8. 引燃AI社区,不用跨界也能从文本生成图像,OpenAI新模型打破自然语言与视觉次元壁...
  9. 刚刚用华为鸿蒙跑了个“hello world”!跑通后,我特么开始怀疑人生....
  10. 日本推出透明公厕,智能玻璃控制透明度,有人如厕就“屏蔽”外界