“高可用性”(High Availability)通常來描述一個系統經過專門的設計,從而減少停工時間,而保持其服務的高度可用性。 計算機系統的可靠性用平均無故障時間(MTTF)來度量,即計算機系統平均能夠正常運行多長時間,才發生一次故障。系統的可靠性越高,平均無故障時間越長。可維護性用平均維修時間(MTTR)來度量,即系統發生故障后維修和重新恢復正常運行平均花費的時間。系統的可維護性越好,平均維修時間越短。計算機系統的可用性定義為系統保持正常運行時間的百分比。
上海新炬認為實現高可用性需從幾個層面解決:網絡層、應用層、數據庫層、主機層、存儲層,設計一個真正的高可用性架構,需要考慮到各層的單點問題。
網絡層和主機層上海新炬采用雙機架構,任何一台主機或者一台主機的網絡中斷,均不會出現單點失敗造成整個系統故障的問題。
應用層我們采用中間件集群架構,實現容災、負載均衡和無中斷服務,集群的兩個個節點分布在不同主機,即使一台主機故障,服務也不會中斷;負載均衡采用F5負載均衡器,比集群軟代理具有更高的可靠性。
數據庫層采用oracle rac技術,保障故障容錯和無縫切換功能,將硬件和軟件錯誤造成的影響最小化,rac的節點同樣分布在不同的主機上,避免主機造成單點故障。
存儲層采用raid獨立冗余磁盤陣列,達到數據讀寫高可用的性能。
上海新炬公司提供系統整體層面,包括數據庫、中間件、主機、存儲等多層的高可用解決方案,也可單獨對某一個層面進行高可用改造。
不同高可用技術方案比較:
|
優勢 |
局限性 |
使用場景 |
存儲鏡像IBM/EMC/HP |
獨立於主機,不占用主機資源,異步模式對應用影響小;模式簡單 |
存儲平台不獨立,多中心存儲設備硬件平台相同;單一的復制拓撲,不支持多對一模式;同步模式:性能影響大,網絡要求高;異步模式:存在數據一致性問題;混合模式:需要較多的存儲投資 |
容災 |
邏輯卷鏡像VERITAS |
存儲平台無關,源端和遠端可以使用不同的存儲設備和RAID保護級別;可以在IP網絡上復制,網絡要求不高;異步模式下應用相應時間不受影響,但RPO會被延長 |
長時間網絡故障需要巨大日志文件空間;占用主機資源,IO等待較高;同步模式:性能影響較大;異步模式:存在數據一致性問題 |
容災 |
邏輯數據復制GOLDENGATE |
日志解析,對主機(數據庫服務器)負載較小;准同步模式,RPO短;主機無關,存儲無關,數據庫平台相關性弱;元數據對象獨立於數據庫,可以支持異構數據庫;可以細化到具體的數據對象(SCHEMA);可以選擇性的進行復制;復制拓撲結構靈活;網絡要求低 |
只支持數據庫同步,不支持其他類型數據同步;較多的數據層維護工作量;數據庫支持有一定限制要求 |
應急容災 |
數據庫復制DATAGUARD |
實現方式簡單;應用透明,支持數據庫所有特性;網絡傳輸效率高;故障隔離,防止數據塊損壞 |
同步模式:對應用性能有影響; |
容災 |