日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

tomcat怎么平滑更新项目_tomcat_deploy 平滑启动脚本

發布時間:2023/12/19 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 tomcat怎么平滑更新项目_tomcat_deploy 平滑启动脚本 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1 #!/bin/bash2 cat <

4 +-------------------------------------------------------------+

5 A)服務器192.168.1.1tomcat后臺更新6 B)服務器192.168.1.2tomcat后臺更新7 C)服務器192.168.1.3tomcat后臺更新8 D)三臺tomcat服務器無人值守后臺跟新9 +-------------------------------------------------------------+

10 ===---------------------------------------------------------===

11 MADAY12

13 export USER=root14 export PASSWD=Quanjing32115 #1.##################################### TOMCAT 8080SHUTDOWN and start script ########################################################16 functiontomcat1(){17

18 cat </root/tomcat_kill19 #!/bin/bash20 tomcat_8080_start=/export/servers/tomcat7-1/bin/startup.sh

21 tomcat_8080_dir=/export/servers/tomcat7-1/webapps22 tomcat_8080_port_check=\`netstat -anpt |grep LISTEN|grep :8080|wc -l\`23 tomcat_8080=\`netstat -anpt |grep LISTEN|grep :8080| awk '{print \$7}' |awk -F "/" '{print \$1}'\`24 tomcat_8080_shutdown_dir=/export/servers/tomcat7-1/bin/shutdown.sh

25 timedate=\`date +%Y%m%d%H%M\`26

27 tomcat_8081_start=/export/servers/tomcat7-2/bin/startup.sh

28 tomcat_8081_dir=/export/servers/tomcat7-2/webapps29 tomcat_8081_port_check=\`netstat -anpt |grep LISTEN|grep :8081|wc -l\`30 tomcat_8081=\`netstat -anpt |grep LISTEN|grep :8081| awk '{print \$7}' |awk -F "/" '{print \$1}'\`31 tomcat_8081_shutdown_dir=/export/servers/tomcat7-2/bin/shutdown.sh

32

33 tomcat_8082_start=/export/servers/tomcat7-3/bin/startup.sh

34 tomcat_8082_dir=/export/servers/tomcat7-3/webapps35 tomcat_8082_port_check=\`netstat -anpt |grep LISTEN|grep :8082|wc -l\`36 tomcat_8082=\`netstat -anpt |grep LISTEN|grep :8082| awk '{print \$7}' |awk -F "/" '{print \$1}'\`37 tomcat_8082_shutdown_dir=/export/servers/tomcat7-3/bin/shutdown.sh

38 #===========================================創建備份war包目錄 并且備份上一個版本===============================================

39

40 if [ -d /export/backup/api ]; then

41 cp /export/servers/tomcat7-3/webapps/ROOT.war /export/backup/api/api_\${timedate}.war42 else

43 mkdir -p /export/backup/api44 cp /export/servers/tomcat7-3/webapps/ROOT.war /export/backup/api/api_\${timedate}.war45 fi

46

47 #==========================================閉蓋nginx 連接不向后臺轉發==========================================================

48 wget -q -O - http://127.0.0.1:8080/health_check/set/1 > /dev/null

49 sleep 5

50 wget -q -O - http://127.0.0.1:8081/health_check/set/1 > /dev/null

51 sleep 5

52 #==========================================kill進程 啟動tomcat=================================================================

53 while true

54 Connect=\`netstat -anpt |grep :8080 |grep ESTABLISHED|wc -l\`55 do

56 if [ "\$Connect" -lt "1" ]; then

57 echo "當前服務器沒有ESTABLISHED連接停止tomcat";58 # [[ -n \$tomcat_8080 ]] && kill -9\$tomcat_808059 ps -elf |grep tomcat7-1|grep -v grep |awk '{print \$4}' |xargs kill -9

60 rm -rf \$tomcat_8080_dir/ROOT*

61 cp /root/api.war \$tomcat_8080_dir/ROOT.war62 sh\$tomcat_8080_start63 sleep 10

64 break65 else

66 echo "Exist process"

67 sleep 2

68 fi

69 done

70

71 while true

72 Connect=\`netstat -anpt |grep :8081 |grep ESTABLISHED|wc -l\`73 do

74 if [ "\$Connect" -lt "1" ]; then

75 echo "當前服務器沒有ESTABLISHED連接停止tomcat";76 # [[ -n \$tomcat_8081 ]] && kill -9\$tomcat_808177 ps -elf |grep tomcat7-2|grep -v grep |awk '{print \$4}' |xargs kill -9

78 rm -rf \$tomcat_8081_dir/ROOT*

79 cp /root/api.war \$tomcat_8081_dir/ROOT.war80 sh\$tomcat_8081_start81 sleep 10

82 break83 else

84 echo "Exist process"

85 sleep 2

86 fi

87 done

88 sleep 5

89

90 if [ "\$tomcat_8082_port_check" -eq "1" ]; then

91 ps -elf |grep tomcat7-3|grep -v grep |awk '{print \$4}' |xargs kill -9

92 rm -rf \$tomcat_8082_dir/ROOT*

93 cp /root/api.war \$tomcat_8082_dir/ROOT.war94 sh\$tomcat_8082_start95 elif [ "\$tomcat_8082_port_check" -eq "1" ];then

96 echo "tomcat 8082 啟動成功"

97 else

98 rm -rf \$tomcat_8082_dir/ROOT*

99 cp /root/api.war \$tomcat_8082_dir/ROOT.war100 sh\$tomcat_8082_start101 fi

102

103 #=========================================后臺啟動完成 開蓋nginx===============================================================

104 sleep 5

105 if [ \$tomcat_8080_port_check -eq 1 ];then

106 wget -q -O - http://127.0.0.1:8080/health_check/set/0 > /dev/null

107 echo "tomcat 8080端口啟動正常"

108 else

109 echo "tomcat 8080端口啟動失敗 請檢查后臺程序"

110 fi

111 sleep 5

112 if [ \$tomcat_8081_port_check -eq 1 ];then

113 wget -q -O - http://127.0.0.1:8081/health_check/set/0 > /dev/null

114 echo "tomcat 8081端口啟動正常"

115 else

116 echo "tomcat 8081端口啟動失敗 請檢查后臺程序"

117 fi

118 bbb119 #==================================================腳本發送執行==================================================

120 /usr/bin/expect <

122 spawn scp /root/tomcat_kill /export/shell/appdeploy/api.war root@192.168.1.1:/root/

123 expect {124 "(yes/no)?" {send "yes\r";exp_continue}125 "password:" {send "$PASSWD\r"}126 }127 interact128 expect eof129 EOF130

131 /usr/bin/expect <

133 spawn ssh root@192.168.1.1

134 expect {135 "(yes/no)?" {send "yes\r";exp_continue}136 "password:" {send "$PASSWD\r"}137 }138 expect -re "\](\$|#)"

139 send "sh -x /root/tomcat_kill \r"

140 expect -re "\](\$|#)"

141 send "rm -rf /root/tomcat_kill \r"

142 expect -re "\](\$|#)"

143 send "exit\r"

144 interact145 expect eof146 EOF147

148 }149

150

151 #2.###############################################tomcat 2start script###############################################152 functiontomcat2(){153

154 cat </root/tomcat_kill155 #!/bin/bash156 tomcat_8080_start=/export/servers/tomcat7-1/bin/startup.sh

157 tomcat_8080_dir=/export/servers/tomcat7-1/webapps158 tomcat_8080_port_check=\`netstat -anpt |grep LISTEN|grep :8080|wc -l\`159 tomcat_8080=\`netstat -anpt |grep LISTEN|grep :8080| awk '{print \$7}' |awk -F "/" '{print \$1}'\`160 tomcat_8080_shutdown_dir=/export/servers/tomcat7-1/bin/shutdown.sh

161 timedate=\`date +%Y%m%d%H%M\`162

163 tomcat_8081_start=/export/servers/tomcat7-2/bin/startup.sh

164 tomcat_8081_dir=/export/servers/tomcat7-2/webapps165 tomcat_8081_port_check=\`netstat -anpt |grep LISTEN|grep :8081|wc -l\`166 tomcat_8081=\`netstat -anpt |grep LISTEN|grep :8081| awk '{print \$7}' |awk -F "/" '{print \$1}'\`167 tomcat_8081_shutdown_dir=/export/servers/tomcat7-2/bin/shutdown.sh

168

169 tomcat_8082_start=/export/servers/tomcat7-3/bin/startup.sh

170 tomcat_8082_dir=/export/servers/tomcat7-3/webapps171 tomcat_8082_port_check=\`netstat -anpt |grep LISTEN|grep :8082|wc -l\`172 tomcat_8082=\`netstat -anpt |grep LISTEN|grep :8082| awk '{print \$7}' |awk -F "/" '{print \$1}'\`173 tomcat_8082_shutdown_dir=/export/servers/tomcat7-3/bin/shutdown.sh

174 #===========================================創建備份war包目錄 并且備份上一個版本===============================================

175

176 if [ -d /export/backup/api ]; then

177 cp /export/servers/tomcat7-3/webapps/ROOT.war /export/backup/api/api_\${timedate}.war178 else

179 mkdir -p /export/backup/api180 cp /export/servers/tomcat7-3/webapps/ROOT.war /export/backup/api/api_\${timedate}.war181 fi

182 #==========================================閉蓋nginx 連接不向后臺轉發==========================================================

183 wget -q -O - http://127.0.0.1:8080/health_check/set/1 > /dev/null

184 sleep 5

185 wget -q -O - http://127.0.0.1:8081/health_check/set/1 > /dev/null

186 sleep 5

187 wget -q -O - http://127.0.0.1:8082/health_check/set/1 > /dev/null

188 sleep 5

189 #==========================================kill進程 啟動tomcat=================================================================

190 while true

191 Connect=\`netstat -anpt |grep :8080 |grep ESTABLISHED|wc -l\`192 do

193 if [ "\$Connect" -lt "1" ]; then

194 echo "當前服務器沒有ESTABLISHED連接停止tomcat";195 # [[ -n \$tomcat_8080 ]] && kill -9\$tomcat_8080196 ps -elf |grep tomcat7-1|grep -v grep |awk '{print \$4}' |xargs kill -9

197 rm -rf \$tomcat_8080_dir/ROOT*

198 cp /root/api.war \$tomcat_8080_dir/ROOT.war199 sh\$tomcat_8080_start200 sleep 10

201 break202 else

203 echo "Exist process"

204 sleep 2

205 fi

206 done

207

208 while true

209 Connect=\`netstat -anpt |grep :8081 |grep ESTABLISHED|wc -l\`210 do

211 if [ "\$Connect" -lt "1" ]; then

212 echo "當前服務器沒有ESTABLISHED連接停止tomcat";213 # [[ -n \$tomcat_8081 ]] && kill -9\$tomcat_8081214 ps -elf |grep tomcat7-2|grep -v grep |awk '{print \$4}' |xargs kill -9

215 rm -rf \$tomcat_8081_dir/ROOT*

216 cp /root/api.war \$tomcat_8081_dir/ROOT.war217 sh\$tomcat_8081_start218 sleep 10

219 break220 else

221 echo "Exist process"

222 sleep 2

223 fi

224 done

225

226 while true

227 Connect=\`netstat -anpt |grep :8082 |grep ESTABLISHED|wc -l\`228 do

229 if [ "\$Connect" -lt "1" ]; then

230 echo "當前服務器沒有ESTABLISHED連接停止tomcat";231 # [[ -n \$tomcat_8082 ]] && kill -9\$tomcat_8082232 ps -elf |grep tomcat7-3|grep -v grep |awk '{print \$4}' |xargs kill -9

233 rm -rf \$tomcat_8082_dir/ROOT*

234 cp /root/api.war \$tomcat_8082_dir/ROOT.war235 sh\$tomcat_8082_start236 sleep 10

237 break238 else

239 echo "Exist process"

240 sleep 2

241 fi

242 done

243 #=========================================后臺啟動完成 開蓋nginx===============================================================

244 sleep 5

245 if [ \$tomcat_8080_port_check -eq 1 ];then

246 wget -q -O - http://127.0.0.1:8080/health_check/set/0 > /dev/null

247 echo "tomcat 8080端口啟動正常"

248 else

249 echo "tomcat 8080端口啟動失敗 請檢查后臺程序"

250 fi

251 sleep 5

252 if [ \$tomcat_8081_port_check -eq 1 ];then

253 wget -q -O - http://127.0.0.1:8081/health_check/set/0 > /dev/null

254 echo "tomcat 8081端口啟動正常"

255 else

256 echo "tomcat 8081端口啟動失敗 請檢查后臺程序"

257 fi

258 sleep 5

259 if [ \$tomcat_8082_port_check -eq 1 ];then

260 wget -q -O - http://127.0.0.1:8082/health_check/set/0 > /dev/null

261 echo "tomcat 8082端口啟動正常"

262 else

263 echo "tomcat 8082端口啟動失敗 請檢查后臺程序"

264 fi

265 bbb266 ################################################腳本發送執行###############################################267 /usr/bin/expect <

269 spawn scp /root/tomcat_kill /export/shell/appdeploy/api.war root@192.168.1.2:/root/

270 expect {271 "(yes/no)?" {send "yes\r";exp_continue}272 "password:" {send "$PASSWD\r"}273 }274 interact275 expect eof276 EOF277

278 /usr/bin/expect <

280 spawn ssh root@192.168.1.2

281 expect {282 "(yes/no)?" {send "yes\r";exp_continue}283 "password:" {send "$PASSWD\r"}284 }285 expect -re "\](\$|#)"

286 send "sh -x /root/tomcat_kill \r"

287 expect -re "\](\$|#)"

288 send "rm -rf /root/tomcat_kill \r"

289 expect -re "\](\$|#)"

290 send "exit\r"

291 interact292 expect eof293 exit294 EOF295 }296

297 #3.###############################################tomcat 3start script###############################################298 functiontomcat3(){299

300 cat </root/tomcat_kill301 #!/bin/bash302 tomcat_8080_start=/export/servers/tomcat7-1/bin/startup.sh

303 tomcat_8080_dir=/export/servers/tomcat7-1/webapps304 tomcat_8080_port_check=\`netstat -anpt |grep LISTEN|grep :8080|wc -l\`305 tomcat_8080=\`netstat -anpt |grep LISTEN|grep :8080| awk '{print \$7}' |awk -F "/" '{print \$1}'\`306 tomcat_8080_shutdown_dir=/export/servers/tomcat7-1/bin/shutdown.sh

307 timedate=\`date +%Y%m%d%H%M\`308

309 tomcat_8081_start=/export/servers/tomcat7-2/bin/startup.sh

310 tomcat_8081_dir=/export/servers/tomcat7-2/webapps311 tomcat_8081_port_check=\`netstat -anpt |grep LISTEN|grep :8081|wc -l\`312 tomcat_8081=\`netstat -anpt |grep LISTEN|grep :8081| awk '{print \$7}' |awk -F "/" '{print \$1}'\`313 tomcat_8081_shutdown_dir=/export/servers/tomcat7-2/bin/shutdown.sh

314

315 tomcat_8082_start=/export/servers/tomcat7-3/bin/startup.sh

316 tomcat_8082_dir=/export/servers/tomcat7-3/webapps317 tomcat_8082_port_check=\`netstat -anpt |grep LISTEN|grep :8082|wc -l\`318 tomcat_8082=\`netstat -anpt |grep LISTEN|grep :8082| awk '{print \$7}' |awk -F "/" '{print \$1}'\`319 tomcat_8082_shutdown_dir=/export/servers/tomcat7-3/bin/shutdown.sh

320 #===========================================創建備份war包目錄 并且備份上一個版本===============================================

321

322 if [ -d /export/backup/api ]; then

323 cp /export/servers/tomcat7-3/webapps/ROOT.war /export/backup/api/api_\${timedate}.war324 else

325 mkdir -p /export/backup/api326 cp /export/servers/tomcat7-3/webapps/ROOT.war /export/backup/api/api_\${timedate}.war327 fi

328

329 #==========================================閉蓋nginx 連接不向后臺轉發==========================================================

330 wget -q -O - http://127.0.0.1:8080/health_check/set/1 > /dev/null

331 sleep 5

332 wget -q -O - http://127.0.0.1:8081/health_check/set/1 > /dev/null

333 sleep 5

334 #==========================================kill進程 啟動tomcat=================================================================

335 while true

336 Connect=\`netstat -anpt |grep :8080 |grep ESTABLISHED|wc -l\`337 do

338 if [ "\$Connect" -lt "1" ]; then

339 echo "當前服務器沒有ESTABLISHED連接停止tomcat";340 # [[ -n \$tomcat_8080 ]] && kill -9\$tomcat_8080341 ps -elf |grep tomcat7-1|grep -v grep |awk '{print \$4}' |xargs kill -9

342 rm -rf \$tomcat_8080_dir/ROOT*

343 cp /root/api.war \$tomcat_8080_dir/ROOT.war344 sh\$tomcat_8080_start345 break346 else

347 echo "Exist process"

348 sleep 2

349 fi

350 done

351

352 while true

353 Connect=\`netstat -anpt |grep :8081 |grep ESTABLISHED|wc -l\`354 do

355 if [ "\$Connect" -lt "1" ]; then

356 echo "當前服務器沒有ESTABLISHED連接停止tomcat";357 # [[ -n \$tomcat_8081 ]] && kill -9\$tomcat_8081358 ps -elf |grep tomcat7-2|grep -v grep |awk '{print \$4}' |xargs kill -9

359 rm -rf \$tomcat_8081_dir/ROOT*

360 cp /root/api.war \$tomcat_8081_dir/ROOT.war361 sh\$tomcat_8081_start362 sleep 10

363 break364 else

365 echo "Exist process"

366 sleep 2

367 fi

368 done

369 sleep 5

370

371 if [ "\$tomcat_8082_port_check" -eq "1" ]; then

372 ps -elf |grep tomcat7-3|grep -v grep |awk '{print \$4}' |xargs kill -9

373 rm -rf \$tomcat_8082_dir/ROOT*

374 cp /root/api.war \$tomcat_8082_dir/ROOT.war375 sh\$tomcat_8082_start376 elif [ "\$tomcat_8082_port_check" -eq "1" ];then

377 echo "tomcat 8082 啟動成功"

378 else

379 rm -rf \$tomcat_8082_dir/ROOT*

380 cp /root/api.war \$tomcat_8082_dir/ROOT.war381 sh\$tomcat_8082_start382 fi

383

384 #=========================================后臺啟動完成 開蓋nginx===============================================================

385 sleep 5

386 if [ \$tomcat_8080_port_check -eq 1 ];then

387 wget -q -O - http://127.0.0.1:8080/health_check/set/0 > /dev/null

388 echo "tomcat 8080端口啟動正常"

389 else

390 echo "tomcat 8080端口啟動失敗 請檢查后臺程序"

391 fi

392 sleep 5

393 if [ \$tomcat_8081_port_check -eq 1 ];then

394 wget -q -O - http://127.0.0.1:8081/health_check/set/0 > /dev/null

395 echo "tomcat 8081端口啟動正常"

396 else

397 echo "tomcat 8081端口啟動失敗 請檢查后臺程序"

398 fi

399 bbb400 #==================================================腳本發送執行==================================================

401 /usr/bin/expect <

403 spawn scp /root/tomcat_kill /export/shell/appdeploy/api.war root@192.168.1.3:/root/

404 expect {405 "(yes/no)?" {send "yes\r";exp_continue}406 "password:" {send "$PASSWD\r"}407 }408 interact409 expect eof410 EOF411

412 /usr/bin/expect <

414 spawn ssh root@192.168.1.3

415 expect {416 "(yes/no)?" {send "yes\r";exp_continue}417 "password:" {send "$PASSWD\r"}418 }419 expect -re "\](\$|#)"

420 send "sh -x /root/tomcat_kill \r"

421 expect -re "\](\$|#)"

422 send "rm -rf /root/tomcat_kill \r"

423 expect -re "\](\$|#)"

424 send "exit\r"

425 interact426 expect eof427 EOF428 }429 ##############################################菜單目錄#############################################################430 read -p "請您輸入(A|B|C|D):"zm431 case "$zm" in

432 A|a)433 tomcat1434 ;;435 B|b)436 tomcat2437 ;;438 C|c)439 tomcat3440 ;;441 D|d)442 tomcat1443 tomcat2444 tomcat3445 ;;446 esac

447 exit 0

總結

以上是生活随笔為你收集整理的tomcat怎么平滑更新项目_tomcat_deploy 平滑启动脚本的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。