2015-06-09 227 views
0

我想爲生產部署提出一個簡單的過程。我有2個tomcat節點,前端是2個apache節點,並在apache節點之上有一個負載均衡器。出於某種原因,我無法在Tomcats上進行並行部署。我正在嘗試在部署期間使用balancer-manager,其中我將確保在應用程序更改之前排除tomcat節點1。我希望確保在將節點置於活動狀態之前驗證tomcat節點上的更改。我知道,在這一點上,我可以從負載平衡器中將apache節點1脫機並更改balancer-manager將請求僅路由到tomcat節點1,並在我上線之前將所有請求都指向Apache節點1進行驗證。我認爲這是一個複雜的過程,我想知道是否有更好的方法可以實現這一點。只是一個FYI我們在F5的兩個Apache節點之間負載均衡請求,我們使用Apache負載平衡兩個tomcat節點之間的請求。Apache Tomcat部署與負載平衡器

任何幫助?

回答

0

有三種方式,我所知道的:

  1. 使用服務註冊中心/服務發現的工具,像consul.io
  2. 實現一個健康檢查到您的應用程序,您可以在運行時控制。 F5將訪問健康檢查資源並決定該節點是否健康。就在部署之前,您將節點的運行狀況狀態更改爲不健康,幾秒後將從負載平衡中刪除該節點。
  3. 使用紅色/藍色部署:這意味着,每個主機攜帶兩個tomcat(紅色和藍色的tomcat)。你的Apache指向紅色或藍色。通過這種方法,您可以部署在紅色的tomcat上,並確保您的應用程序已啓動。然後,您將Apache的配置切換爲指向紅色的配置並進行平穩重啓 - 不會請求丟失。藍色現在處於非活動狀態,下次部署時,您將部署到藍色的tomcat並重復該過程。

我在生產和大型ISP中使用了所有方法。取決於您的基礎設施,應用程序以及您希望如何處理HA問題。

HTH,Mark

+0

感謝馬克。儘管我喜歡選項3,但我更傾向於選項2.選項3並不能贏得我在我的位置執行的選票。 –