「高可用性」(High Availability)??

「高可用性」(High Availability)一般來描述一個系統通過專門的設計,從而減小停工時間,而保持其服務的高度可用性。數據庫

計算機的高可用性安全

計算機系統的可用性用平均無端障時間(MTTF)來度量,即計算機系統平均可以正常運行多長時間,才發生一次故障。系統的可用性越高,平均無端障時間越長。可維護性用平均維修時間(MTTR)來度量,即系統發生故障後維修和從新恢復正常運行平均花費的時間。系統的可維護性越好,平均維修時間越短。計算機系統的可用性定義爲:MTTF/(MTTF+MTTR) * 100%。因而可知,計算機系統的可用性定義爲系統保持正常運行時間的百分比。

負載均衡服務器的高可用性

爲了屏蔽負載均衡服務器的失效,須要創建一個備份機。主服務器和備份機上都運行High Availability監控程序,經過傳送諸如「I am alive」這樣的信息來監控對方的運行情況。當備份機不能在必定的時間內收到這樣的信息時,它就接管主服務器的服務IP並繼續提供服務;當備份管理器又從主管理器收到「I am alive」這樣的信息時,它就釋放服務IP地址,這樣的主管理器就開始再次進行 集羣管理的工做了。爲在主服務器失效的狀況下系統能正常工做,咱們在主、備份機之間實現負載集羣系統配置信息的同步與備份,保持兩者系統的基本一致。

高可用性HA的容錯備援運做過程

自動偵測(Auto-Detect)階段由 主機上的軟件經過 冗餘偵測線,經由複雜的監聽程序。邏輯判斷,來相互偵測對方運行的狀況,所檢查的項目有:主機硬件(CPU和周邊)、主機網絡、 主機操做系統、數據庫引擎及其它應用程序、主機與 磁盤陣列連線。爲確保偵測的正確性,而防止錯誤的判斷,可設定安全偵測時間,包括偵測時間間隔,偵測次數以調整安全係數,而且由主機的冗餘通訊連線,將所聚集的訊息記錄下來,以供維護參考。
自動切換(Auto-Switch)階段 某一主機若是確認對方故障,則正常主機除繼續進行原來的任務,還將依據各類容錯備援模式接管預先設定的備援做業程序,並進行後續的程序及服務。
自動恢復(Auto-Recovery)階段在正常主機代替故障主機工做後,故障主機可離線進行修復工做。在故障主機修復後,透過 冗餘通信線與原正常主機連線,自動切換回修復完成的主機上。整個恢復過程完成由EDI-HA自動完成,亦可依據預先配置,選擇回覆動做爲半自動或不恢復。
 
HA三種工做方式
(1)主從方式 (非對稱方式)
工做原理:主機工做,備機處於監控準備情況;當主機宕機時,備機接管主機的一切工做,待主機恢復正常後,按使用者的設定以自動或手動方式將服務切換到主機上運行,數據的一致性經過共享 存儲系統解決。
(2)雙機雙工方式(互備互援)
工做原理:兩臺主機同時運行各自的服務工做且相互監測狀況,當任一臺主機宕機時,另外一臺主機當即接管它的一切工做,保證工做實時,應用服務系統的關鍵數據存放在共享存儲系統中。
(3) 集羣工做方式(多服務器互備方式)
工做原理:多臺主機一塊兒工做,各自運行一個或幾個服務,各爲服務定義一個或多個備用主機,當某個主機故障時,運行在其上的服務就能夠被其它主機接管。
高可用性的衡量指標
可用性的計算公式:
%availability=(Total Elapsed Time-Sum of Inoperative Times)/ Total Elapsed Time
elapsed time爲operating time+downtime。
可用性和系統組件的失敗率相關。衡量系統設備失敗率的一個指標是「失敗間隔平均時間」MTBF(mean time between failures)。一般這個指標衡量系統的組件,如磁盤。
MTBF=Total Operating Time / Total No. of Failures
Operating time爲系統在使用的時間(不包含停機狀況)。

高可用性系統的設計

設計系統的可用性,最重要的是知足用戶的需求。系統的失敗只有當其致使服務的失效性足以影響到系統用戶的需求時纔會影響其可用性的指標。用戶的敏感性決定於系統提供的應用。例如,在一個能在1秒鐘以內被修復的失敗在一些 聯機事務處理系統中並不會被感知到,但若是是對於一個實時的科學計算應用系統,則是不可被接受的。
系統的高可用性設計決定於您的應用。例如,若是幾個小時的計劃停機時間是可接受的,也許 存儲系統就不用設計爲磁盤可熱插拔的。反之,你可能就應該採用可熱插拔、熱交換和鏡像的磁盤系統。
因此涉及高可用系統須要考慮:
決定業務中斷的持續時間。根據公式計算出的衡量HA的指標,能夠獲得一段時間內能夠中斷的時間。但可能很大量的短期中斷是能夠忍受的,而少許長時間的中斷倒是不可忍受的。
在統計中代表,形成非計劃的宕機因素並不是都是硬件問題。硬件問題只佔40%,軟件問題佔30%,人爲因素佔20%,環境因素佔10%。您的高可用性系統應該能儘量地考慮到上述全部因素。
當出現業務中斷時,儘快恢復的手段。

高可用性致使計劃內的停機因素有

週期性的備份
軟件升級
硬件擴充或維修
系統配置更改
數據更改

高可用性致使計劃外停機的因素有

硬件失敗
文件系統滿錯誤
備份失敗
磁盤滿
供電失敗
網絡失敗
應用失敗
天然災害
操做或管理失誤
經過有針對性的設計,能夠避免上述所有或部分因素帶來的損失。固然,100%的高可用系統是不存在的。

建立高可用性的計算機系統

在UNIX系統上建立高可用性計算機系統,業界的通行作法,也是很是有效的作法,就是採用集羣系統(Cluster),將各個 主機系統經過網絡或其餘手段有機地組成一個羣體,共同對外提供服務。建立羣集系統,經過實現高可用性的軟件將 冗餘的高可用性的硬件組件和 軟件組件組合起來,消除 單點故障
消除供電的單點故障
消除磁盤的單點故障
消除SPU(System Process Unit)單點故障
消除網絡單點故障
消除軟件單點故障
儘可能消除單系統運行時的單點故障
相關文章
相關標籤/搜索