“高可用性”(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)叢集工作方式(多伺服器互備方式)工作原理:多台主機一起工作,各自運行一個或幾個服務,各為服務定義一個或多個備用主機,當某個主機故障時,運行在其上的服務就可以被其它主機接管。什麼是高可用性(HA)高可用性的衡量指標可用性的計算公式:%availability=(Total Elapsed Time-Sum of Inoperative Times)/ Total Elapsed Timeelapsed time為operating time+downtime。可用性和系統組件的失敗率相關。衡量系統裝置失敗率的一個指標是“失敗間隔平均時間”MTBF(mean time between failures)。通常這個指標衡量系統的組件,如磁碟。MTBF=Total Operating Time / Total No. of FailuresOperating time為系統在使用的時間(不包含停機情況)。高可用性系統的設計設計系統的可用性,最重要的是滿足使用者的需求。系統的失敗只有當其導致服務的失效性足以影響到系統使用者的需求時才會影響其可用性的指標。使用者的敏感性決定於系統提供的應用。例如,在一個能在1秒鐘之內被修複的失敗在一些聯機交易處理系統中並不會被感知到,但如果是對於一個即時的科學計算應用系統,則是不可被接受的。系統的高可用性設計決定於您的應用。例如,如果幾個小時的計劃停機時間是可接受的,也許儲存系統就不用設計為磁碟可熱插拔的。反之,你可能就應該採用可熱插拔、熱交換和鏡像的磁碟系統。所以涉及高可用系統需要考慮:決定業務中斷的期間。根據公式計算出的衡量HA的指標,可以得到一段時間內可以中斷的時間。但可能很大量的短時間中斷是可以忍受的,而少量長時間的中斷卻是不可忍受的。在統計中表明,造成非計劃的宕機因素並非都是硬體問題。硬體問題只佔40%,軟體問題佔30%,人為因素佔20%,環境因素佔10%。您的高可用性系統應該能儘可能地考慮到上述所有因素。當出現業務中斷時,儘快恢複的手段。導致計劃內的停機因素有:周期性的備份軟體升級硬體擴充或維修系統配置更改資料更改導致計劃外停機的因素有:硬體失敗檔案系統滿錯誤記憶體溢出備份失敗磁碟滿供電失敗網路失敗應用失敗自然災害操作或管理失誤通過有針對性的設計,可以避免上述全部或部分因素帶來的損失。當然,100%的高可用系統是不存在的。建立高可用性的電腦系統在UNIX系統上建立高可用性電腦系統,業界的通行做法,也是非常有效做法,就是採用群集系統(Cluster),將各個主機系統通過網路或其他手段有機地組成一個群體,共同對外提供服務。建立群集系統,通過實現高可用性的軟體將冗餘的高可用性的硬體組件和軟體組件組合起來,消除單點故障:消除供電的單點故障消除磁碟的單點故障消除SPU(System Process Unit)單點故障[1]消除網路單點故障消除軟體單點故障盡量消除單系統運行時的單點故障