High-Availability

如何設計高可用系統

  • August 22, 2015

假設我有一些 Web 應用程序和一些桌面應用程序在生產環境的伺服器上執行。

在生產環境中,即使是一分鐘的停機時間也是不能容忍的。目前我只知道HA Cluster system哪個用於此目的。我想如果這是防止系統關閉的唯一方法,或者除此之外還有其他方法嗎?

像Google這樣的大公司使用什麼來實現高可用性,因為他們也不會容忍一秒鐘的停機時間?

謝謝

基本上,您希望對執行應用程序所需的每項服務進行自動故障轉移。

一種解決方案可能是以下描述的方法:

  1. Keepalived 安裝在兩個系統上。
  2. HAProxy 作為負載均衡器,故障轉移到 HAP LB 2。由 keepalived 監控
  3. HAP 背後的 Apache/NGINX。如果其中一個失敗,HAP 將對其進行監控並重定向到另一台伺服器上的 Apache/NGINX
  4. MySQL Master / Master 複製,負載平衡和 HAP 監控

基本上,HAProxy 將負載分散到您的系統上,並且僅在它啟動並執行時轉發到其中一項服務。

您正在尋找的架構可能如下所示:

在此處輸入圖像描述

引用自:https://serverfault.com/questions/715961