2 高可用集羣
2.1 什麼是高可用性
計算機系統的可用性(availability)是通過系統的可靠性(reliability)和可維護性(maintainability)來度量的。工程上通常用平均無故障時間(MTTF)來度量系統的可靠性,用平均維修時間(MTTR)來度量系統的可維護性。於是可用性被定義爲:
MTTF/(MTTF+MTTR)*100%
業界根據可用性把計算機系統分爲如下幾類:
可用比例 | 年停機時間 | 可用性分類 |
99.5 | 3.7天 | 常規系統(Conventional) |
99.9 | 8.8小時 | 可用系統(Available) |
99.99 | 52.6分鐘 | 高可用系統(Highly Available) |
99.999 | 5.3分鐘 | Fault Resilient |
99.9999 | 32秒 | Fault Tolerant |
表1. 系統可用性分類
對於關鍵業務,停機通常是災難性的。因爲停機帶來的損失也是巨大的。下面的統計數字列舉了不同類型企業應用系統停機所帶來的損失。
應用系統 | 每分鐘損失(美元) |
呼叫中心(Call Center) | 27000 |
企業資源計劃(ERP)系統 | 13000 |
供應鏈管理(SCM)系統 | 11000 |
電子商務(eCommerce)系統 | 10000 |
客戶服務(Customer Service Center)系統 | 27000 |
表 2. 停機給企業帶來的損失
隨着企業越來越依賴於信息技術,由於系統停機而帶來的損失也越拉越大。
2.2 高可用集羣
高可用集羣就是採用集羣技術來實現計算機系統的高可用性。高可用集羣通常有兩種工作方式:
容錯系統:通常是主從服務器方式。從服務器檢測主服務器的狀態,當主服務工作正常時,從服務器並不提供服務。但是一旦主服務器失效,從服務器就開始代替主服務器向客戶提供服務。
負載均衡系統:集羣中所有的節點都處於活動狀態,它們分攤系統的工作負載。一般Web服務器集羣、數據庫集羣和應用服務器集羣都屬於這種類型。
關於高可用集羣的討論很多,這裏就不進行深入的闡述了。