# Tomcat部署War檔-完整過版流程(含Nginx切換) **請求送到Nginx做Load Balance後,會分去不同的Web server來處理請求**  **所以要完整過版又不影響到系統正式運作的話,就要先切換Nginx設定輪流導向另外一台Tomcat來處理請求,在輪流過版** --- **假設: Nginx - A 和 Nginx - B 上面的nginx.conf設定為** ```\ upstream camiolWs{ server 160.201.30.100:7024 server 160.201.30.200:7024 } ``` **我們今天先過版到 160.201.30.100 上面的Tomcat 那我們就先將Nginx上面的nginx.conf都把160.201.30.100註解掉** ```\ upstream camiolWs{ #server 160.201.30.100:7024 server 160.201.30.200:7024 } ``` **然後輪流重啟Nginx** ```\ cd ../sbin/ ./nginx -t //測試剛改的nginx.conf是否正常 //如果回應test is successful ,就重啟nginx ./nginx -s reload ``` **看log確定沒有交易到160.201.30.100的tomcat後 開始重啟160.201.30.100的tomcat** **將原本的war檔檔名改掉加上日期** ```\ //先cd 到tomcat路徑下面的bin資料夾 ps aux | grep tomcat //查出tomcat目前的PID //假設查出來tomcat PID 為 7293 kill -9 7293 //殺掉tomcat的process //將要部屬的檔案放到tomcat的webapps資料夾,然後啟動tomcat ./startup.sh //查看catalina.out ,確認是否啟動成功 tail -500f ../logs/catalina.out //確認log裡看到有server start up success 之類的字樣即可 ``` **這時候再把Nginx 輪流切換到另外一台Tomcat,一樣輪流重啟Nginx** ```\ upstream camiolWs{ server 160.201.30.100:7024 #server 160.201.30.200:7024 } ``` **在160.201.30.100確認是否有交易進來** ```\ tail -500f log/camiolWs.log ``` **確認完後重複上面的步驟,重啟160.201.30.200的Tomcat** **最後把Nginx調回原本的設定,輪流重啟Nginx即可** ```\ upstream camiolWs{ server 160.201.30.100:7024 server 160.201.30.200:7024 } ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up