容錯的概念
一、按時間劃分的故障分類
1.永久性失效 (permanent)
永久持續下去直至修復為止
2.間歇性故障 (intermittent)
短暫的,但是卻是斷續的,既有其偶然性,又有其不定期的重複性。
3.偶然性故障 (transient)
暫時的,且可能是非重複的
二、間歇性故障和偶然性故障
占所有現場失效的90%
容錯的含義
容錯的含義比較寬泛,這種不確定性容易引發歧義,增加理解上的難度。從概念上來說,容錯是指伺服器對於錯誤的容納能力,是套用過程中對於伺服器穩定性追求的一個目標。為了這樣一個目標,有幾種技術上的實現方法,目前國內談論最多的是三種:伺服器群集技術、雙機冗餘伺服器方案和單機容錯技術。
實際上,伺服器群集和雙機冗餘的技術比較類似,雙機冗餘是最簡單的集群,是其一個特例,也可以把伺服器集群技術視為雙機冗餘的延伸,可以理解為一種多機容錯的方案。在一般的討論之中,集群技術是為了解決計算性能不足的問題,通過多台伺服器的集群計算,為高性能計算領域套用提供所需要的高性能。採用集群技術,通過多台伺服器之間的負載均衡,可以解決伺服器單點故障所引發的系統不穩定,提高系統的可靠性,因此集群具有更好的容錯能力,但是在實際的套用中,集群技術多用於高性能計算。
基本原理
容錯計算機系統(fault-tolerant computer system)包括大量的硬體措施和軟體措施,還包括電源組件,電源組件可以提供不間斷的不被打斷的環境。包容錯誤程式的計算機使用特殊軟體的慣常程式和自我檢查的邏輯程式,將其設計為電路的一部分,用來檢查硬體問題,並可以自動轉換成後備設施。在不涉及計算機系統的情況下,計算機的一些部分可以進行移除,也可以進行修理。
容錯伺服器功能的基礎是建立在時鐘同步(lockstep)技術上的體系架構,採用即使在故障出現也可保證連續處理的冗餘部件來消除單點故障。許多“強壯的”伺服器提供冗餘的電源供給、風扇和磁碟,然而只有容錯伺服器可以提供對核心繫統組件,包括母板、處理器、記憶體、I/O匯流排和I/O適配器的保護。
Lockstep可以保持多CPU/記憶體單元在精確的同步狀態——同一時鐘周期執行相同的指令。Lockstep能夠確保包括瞬時錯誤在內的任何錯誤都不會影響到系統運行,系統可以在任何CPU/記憶體單元發生錯誤的情況下不丟失數據或狀態,也不需產生中斷進行錯誤處理 。
容錯I/O系統物理上與CPU-Memory系統分離。硬體邏輯,以定製的晶片組形式,作為CPU和I/O間的PCI橋接,同時提供核心錯誤偵測、故障隔離、以及時鐘同步結構的同步邏輯。CPU/Memory子系統中的定製邏輯包含主要的PCI接口、中斷控制功能,和交易排序邏輯。I/O子系統中的定製邏輯包含表決邏輯、次級PCI接口,以及錯誤暫存器。定製的晶片組使用被動匯流排連線伺服器中冗餘的CPU和I/O模組。
容錯伺服器的I/O以雙份的I/O匯流排、冗餘的I/O適配器,和冗餘的設備組成。所有關鍵PCI適配器是冗餘的:SCSI、SATA、乙太網、遠程管理,和光通道。內部SCSI和SATA磁碟存儲和擴展光通道存儲為鏡像的(RAID 1),通過兩條獨立的存儲I匯流排連線。外部光通道硬體RAID陣列的連線也是冗餘,可保證完全容錯的操作。對任何邏輯I/O操作,包括內部和外部存儲操作,都是多路經可行的。任何I/O操作故障將引發選擇另一條路徑作操作重試,確保I/O操作的完成。
發展歷史
上世紀80年代,第一代容錯技術開始進入套用領域,美國Stratus在Stratus獨特的硬體級容錯技術及VOS專有作業系統環境下,採用了Motorola M68000處理器。
1993年,英特爾I860處理器在Stratus的硬體級容錯體系結構中成功套用,在軟體環境方面滿足業界對開放性要求的Unix作業系統FTX。
1996年,容錯技術得到HP的支持推出Stratus Continuum系列,將Stratus容錯結構結合HP PA-RISC對稱多處理技術。
進入21世紀以來,生產製造業、中小企業、銀行金融、能源、交通等領域對伺服器,特別是中低端IA伺服器的需求激增,過去僅僅可以套用在RISC平台、HP-UX環境下的容錯產品也面臨著新的挑戰。另一方面,企業越來越依賴信息系統來完成關鍵業務的套用,同時企業不可能配備更多的專業人員來進行專職維護,雙機熱備、集群伺服器遇到難題。
如今,很多硬體製造企業與容錯合作,大量推出了基於IA架構、支持Microsoft Windows Server 和Linux的容錯伺服器,這種實時保護技術源於STRATUS的lockstep技術。
發展趨勢
容錯技術的套用已經開始從過去的證券、電信等領域進入基礎行業,如製造、能源、物流、交通及有著"7×24"不間斷運營需求的中小商業團體和政府。為迎合網際網路的高速增長,為容錯伺服器引入了全新的穩定、安全、可升級、功能強的Linux。
容錯的未來將會向更高的可用性、更卓越的可維護性發展。調查顯示,越來越多的用戶開始注重TCO(總擁有成本),更多的企業決定逐步放棄採用雙機熱備的方式來維護複雜的集群伺服器,轉而將目光瞄向具有容錯技術的平台或容錯伺服器平台。
在國內,美國容錯(Stratus)與 海得控制(HiTE)合作在一定程度上彌補了國內容錯伺服器在服務拓展領域的短板 。