線上有個網站業務部署在tomcat上,由于頻繁上線修改,需要經常啟動tomcat。
tomcat服務自帶的bin下沒有重新開機腳本,下面分享一例腳本發版和tomcat重新開機腳本:
1)現将業務代碼從svn裡下載下傳到本地,首次下載下傳後,後續就使用svn update更新代碼即可。
發版腳本:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<code>[root@redmine ~]</code><code># cd /Data/webroot_svncode/xqsj_app/banshanbandao/bsbd_war/</code>
<code>[root@redmine bsbd_war]</code><code># ls</code>
<code>ROOT.war</code>
<code>[root@redmine xqsj_app]</code><code># cat up_pub_online_banshanbandao.sh</code>
<code>#!/bin/bash</code>
<code>REMOTE_SERVER_IP=</code><code>"192.168.1.106 192.168.1.220"</code>
<code>DEST_DIR=</code><code>"/Data/app/tomcat-7-banshanbandao/webapps/"</code>
<code>cd</code> <code>/Data/webroot_svncode/xqsj_app/banshanbandao/bsbd_war/</code>
<code>/usr/bin/svn</code> <code>update</code>
<code>for</code> <code>SERVER </code><code>in</code> <code>${REMOTE_SERVER_IP};</code><code>do</code>
<code>/usr/bin/ssh</code> <code>-p22 ${SERVER} </code><code>"rm -rf /Data/app/tomcat-7-banshanbandao/webapps/*"</code><code>;</code>
<code>/usr/bin/rsync</code> <code>-av -e </code><code>"/usr/bin/ssh -p22"</code> <code>--</code><code>rsync</code><code>-path=</code><code>"/usr/bin/rsync"</code> <code>--progress </code><code>/Data/webroot_svncode/xqsj_app/banshanbandao/bsbd_war/ROOT</code><code>.war ${SERVER}:${DEST_DIR};</code>
<code>sleep</code> <code>15</code>
<code>/usr/bin/ssh</code> <code>-p22 ${SERVER} </code><code>"/bin/sh /Data/app/tomcat-7-banshanbandao/start.sh"</code><code>;</code>
<code>done</code><code> </code>
2)目标機器192.168.1.106
<code>[root@web1 ~]</code><code># cd /Data/app/tomcat-7-banshanbandao/webapps/</code>
<code>[root@web1 webapps]</code><code># ls</code>
<code>ROOT ROOT.war</code>
tomcat重新開機腳本(腳本中将dbconfig.properties配置檔案事先準備好,以後每次上線後,配置檔案保持不變!因為svn裡上線代碼中的配置都是開發基于本機的配置)
<code>[root@web1 webapps]</code><code># cat /Data/app/tomcat-7-banshanbandao/start.sh</code>
<code>cd</code> <code>/Data/app/tomcat-7-banshanbandao/</code>
<code>kill</code> <code>-9 `</code><code>ps</code> <code>-ef|</code><code>grep</code> <code>java|</code><code>grep</code> <code>-</code><code>v</code> <code>grep</code><code>|</code><code>grep</code> <code>banshanbandao |</code><code>awk</code> <code>-F</code><code>" "</code> <code>'{print $2}'</code><code>`</code>
<code>rm</code> <code>-rf temp/*</code>
<code>rm</code> <code>-rf work/*</code>
<code>\</code><code>cp</code> <code>-rf dbconfig.properties webapps</code><code>/ROOT/WEB-INF/classes/</code>
<code>export</code> <code>JAVA_HOME=</code><code>"/usr/java/jdk1.7.0_79"</code>
<code>/bin/sh</code> <code>bin</code><code>/startup</code><code>.sh</code>
---------------------------------------------------------------------------------------
上述腳本中的:
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
20
21
22
23
24
25
26
27
28
29
30
31
<code>[root@web1 ~]</code><code># ps -ef|grep tomcat</code>
<code>root 5759 1 0 Oct31 ? 00:20:09 </code><code>/usr/java/jdk1</code><code>.7.0_79</code><code>/bin/java</code> <code>-Djava.util.logging.config.</code><code>file</code><code>=</code><code>/Data/app/tomcat-7-banshanbandao/conf/logging</code><code>.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -server -Xms1024m -Xmx2048m -XX:MaxNewSize=512m -XX:PermSize=2048M -XX:MaxPermSize=2048m -Djava.endorsed.</code><code>dirs</code><code>=</code><code>/Data/app/tomcat-7-banshanbandao/endorsed</code> <code>-classpath </code><code>/Data/app/tomcat-7-banshanbandao/bin/bootstrap</code><code>.jar:</code><code>/Data/app/tomcat-7-banshanbandao/bin/tomcat-juli</code><code>.jar -Dcatalina.base=</code><code>/Data/app/tomcat-7-banshanbandao</code> <code>-Dcatalina.home=</code><code>/Data/app/tomcat-7-banshanbandao</code> <code>-Djava.io.tmpdir=</code><code>/Data/app/tomcat-7-banshanbandao/temp</code> <code>org.apache.catalina.startup.Bootstrap start</code>
<code>root 19549 16881 0 18:06 pts</code><code>/0</code> <code>00:00:00 </code><code>grep</code> <code>--color=auto tomcat</code>
<code>[root@web1 ~]</code><code># ps -ef|grep java|grep -v grep|grep banshanbandao |awk -F" " '{print $2}'</code>
<code>5759</code>
<code>[root@web1 ~]</code><code># /bin/sh -x /Data/app/tomcat-7-banshanbandao/start.sh</code>
<code>+ </code><code>cd</code> <code>/Data/app/tomcat-7-banshanbandao/</code>
<code>++ </code><code>ps</code> <code>-ef</code>
<code>++ </code><code>grep</code> <code>java</code>
<code>++ </code><code>grep</code> <code>-</code><code>v</code> <code>grep</code>
<code>++ </code><code>grep</code> <code>banshanbandao</code>
<code>++ </code><code>awk</code> <code>'-F '</code> <code>'{print $2}'</code>
<code>+ </code><code>kill</code> <code>-9 19707</code>
<code>+ </code><code>rm</code> <code>-rf </code><code>'temp/*'</code>
<code>+ </code><code>rm</code> <code>-rf work</code><code>/Catalina</code>
<code>+ </code><code>cp</code> <code>-rf dbconfig.properties webapps</code><code>/ROOT/WEB-INF/classes/</code>
<code>+ </code><code>export</code> <code>JAVA_HOME=</code><code>/usr/java/jdk1</code><code>.7.0_79</code>
<code>+ JAVA_HOME=</code><code>/usr/java/jdk1</code><code>.7.0_79</code>
<code>+ </code><code>/bin/sh</code> <code>bin</code><code>/startup</code><code>.sh</code>
<code>Using CATALINA_BASE: </code><code>/Data/app/tomcat-7-banshanbandao</code>
<code>Using CATALINA_HOME: </code><code>/Data/app/tomcat-7-banshanbandao</code>
<code>Using CATALINA_TMPDIR: </code><code>/Data/app/tomcat-7-banshanbandao/temp</code>
<code>Using JRE_HOME: </code><code>/usr/java/jdk1</code><code>.7.0_79</code>
<code>Using CLASSPATH: </code><code>/Data/app/tomcat-7-banshanbandao/bin/bootstrap</code><code>.jar:</code><code>/Data/app/tomcat-7-banshanbandao/bin/tomcat-juli</code><code>.jar</code>
<code>Tomcat started.</code>
<code>root 19859 1 99 18:07 pts</code><code>/0</code> <code>00:00:05 </code><code>/usr/java/jdk1</code><code>.7.0_79</code><code>/bin/java</code> <code>-Djava.util.logging.config.</code><code>file</code><code>=</code><code>/Data/app/tomcat-7-banshanbandao/conf/logging</code><code>.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -server -Xms1024m -Xmx2048m -XX:MaxNewSize=512m -XX:PermSize=2048M -XX:MaxPermSize=2048m -Djava.endorsed.</code><code>dirs</code><code>=</code><code>/Data/app/tomcat-7-banshanbandao/endorsed</code> <code>-classpath </code><code>/Data/app/tomcat-7-banshanbandao/bin/bootstrap</code><code>.jar:</code><code>/Data/app/tomcat-7-banshanbandao/bin/tomcat-juli</code><code>.jar -Dcatalina.base=</code><code>/Data/app/tomcat-7-banshanbandao</code> <code>-Dcatalina.home=</code><code>/Data/app/tomcat-7-banshanbandao</code> <code>-Djava.io.tmpdir=</code><code>/Data/app/tomcat-7-banshanbandao/temp</code> <code>org.apache.catalina.startup.Bootstrap start</code>
<code>root 19883 16881 0 18:07 pts</code><code>/0</code> <code>00:00:00 </code><code>grep</code> <code>--color=auto tomcat</code>
***************當你發現自己的才華撐不起野心時,就請安靜下來學習吧***************
本文轉自散盡浮華部落格園部落格,原文連結:http://www.cnblogs.com/kevingrace/p/5996133.html,如需轉載請自行聯系原作者