雙機(jī)熱備
(作者未知) 2009/4/11
【什么是雙機(jī)熱備】
雙機(jī)熱備包括廣義與狹義兩種。
從廣義上講,就是服務(wù)器高可用應(yīng)用的另一種說法,英譯為:high available,而我們通常所說的熱備是根據(jù)意譯而來,同屬于高可用范疇,而雙機(jī)熱備只限定了高可用中的兩臺服務(wù)器。熱備軟件是用來解決一種不可避免的計(jì)劃和非計(jì)劃系統(tǒng)宕機(jī)問題的軟件解決方案,當(dāng)然也有硬件的。是構(gòu)筑高可有集群系統(tǒng)的基礎(chǔ)軟件,對于任何導(dǎo)致系統(tǒng)宕機(jī)或服務(wù)中斷的故障,都會觸發(fā)軟件流程來進(jìn)行錯誤判定、故障隔離、以及通地聯(lián)機(jī)恢復(fù)來繼續(xù)執(zhí)行被中斷的服務(wù)。在這個過程中,用戶只需要經(jīng)受一定程度可接受的時(shí)延,而能夠在最短的時(shí)間內(nèi)恢復(fù)服務(wù)。
從狹義上講,雙機(jī)熱備特指基于高可用系統(tǒng)中的兩臺服務(wù)器的熱備(或高可用),因兩機(jī)高可用在國內(nèi)使用較多,故得名雙機(jī)熱備,雙機(jī)高可用按工作中的切換方式分為:主-備方式(Active-Standby方式)和雙主機(jī)方式(Active-Active方式),主-備方式即指的是一臺服務(wù)器處于某種業(yè)務(wù)的激活狀態(tài)(即Active狀態(tài)),另一臺服務(wù)器處于該業(yè)務(wù)的備用狀態(tài)(即Standby狀態(tài))。而雙主機(jī)方式即指兩種不同業(yè)務(wù)分別在兩臺服務(wù)器上互為主備狀態(tài)(即Active-Standby和Standby-Active狀態(tài))。
注:Active-Standby的狀態(tài)指的是某種應(yīng)用或業(yè)務(wù)的狀態(tài),并非指的是服務(wù)器狀態(tài)。
組成雙機(jī)熱備的方案主要有兩種方式:
1、基于共享存儲(磁盤陣列)的方式:
共享存儲方式主要通過磁盤陣列提供切換后,對數(shù)據(jù)完整性和連續(xù)性的保障。用戶數(shù)據(jù)一般會放在磁盤陣列上,當(dāng)主機(jī)宕機(jī)后,備機(jī)繼續(xù)從磁盤陣列上取得原有數(shù)據(jù)。如下圖所示。
這種方式因?yàn)槭褂靡慌_存儲設(shè)備,往往被業(yè)內(nèi)人士稱為磁盤單點(diǎn)故障。但一般來講存儲的安全性較高。所以如果忽略存儲設(shè)備故障的情況下,這種方式也是業(yè)內(nèi)采用最多的熱備方式。
2、基于數(shù)據(jù)復(fù)制的方式:
這種方式主要利用數(shù)據(jù)的同步方式,保證主備服務(wù)器的數(shù)據(jù)一致性。
基本于數(shù)據(jù)復(fù)制的方式有多種方法,其性能和安全也不盡相同,其主要方法有以下幾種:
A、單純的文件方式的考貝不適用于數(shù)據(jù)庫等應(yīng)用,因?yàn)榇蜷_的文件是不能被復(fù)制的,如果要復(fù)制必須將數(shù)據(jù)庫關(guān)閉,這顯然是不可以的。以文件方式的復(fù)制主要適用于WEB頁的更新,F(xiàn)TP上傳應(yīng)用,對主備機(jī)數(shù)據(jù)完整性,連續(xù)性要求不高的情況下使用。
B、利用數(shù)據(jù)庫所帶有復(fù)制功能,比如SQLServer2000或2005所帶的定閱復(fù)制,這種方式用戶要根據(jù)自己的應(yīng)用小心使用,原因主要是:
(1)SQLServer的定閱復(fù)制會在用戶表上增加字段,對那些應(yīng)用軟件編程要求較高,如果在應(yīng)用軟件端書寫時(shí)未明確指定字段的用戶,而使用此功能會造成應(yīng)用程序無法正常工作。
(2)數(shù)據(jù)滯留,這個限制怕也是最要命的,因?yàn)镾QLServer在數(shù)據(jù)傳輸過程中數(shù)據(jù)并非實(shí)時(shí)的到達(dá)主備機(jī),而是數(shù)據(jù)先寫到主機(jī),再寫到備機(jī),如此一來,備機(jī)的數(shù)據(jù)往往來不及更新,此時(shí)如果發(fā)生切換,備機(jī)的數(shù)據(jù)將不完整,也不連續(xù),如果用戶發(fā)現(xiàn)已寫入的數(shù)據(jù)在備機(jī)找不到,重新寫入的話,則主機(jī)修復(fù)后,就會發(fā)生主備機(jī)數(shù)據(jù)嚴(yán)重沖突,數(shù)據(jù)庫會亂掉。
(3)復(fù)雜應(yīng)用切莫使用定閱復(fù)制來做雙機(jī)熱備,包括數(shù)據(jù)結(jié)構(gòu)中存儲過程的處理,觸發(fā)器和序列,一旦發(fā)生沖突,修改起來非常麻煩。
(4)服務(wù)器性能降低,對于大一點(diǎn)的數(shù)據(jù)庫,SQLServer2000或2005所帶的定閱復(fù)制會造成服務(wù)器數(shù)據(jù)庫運(yùn)行緩慢。
總之SQLServer2000或2005所帶的定閱復(fù)制主要還是應(yīng)用于數(shù)據(jù)快照服務(wù),切莫用他來做雙機(jī)熱備中的數(shù)據(jù)同步。
C:硬盤數(shù)據(jù)攔截,目前國際國內(nèi),比較成熟的雙機(jī)熱備軟件通常會使用硬盤數(shù)據(jù)攔截的技術(shù),通常稱為鏡像軟件即Mirror軟件,這種技術(shù)當(dāng)前已非常成熟,攔截的方式也不盡相同。
(1)分區(qū)攔截技術(shù),以Pluswell熱備份產(chǎn)品為例,他采用的是一種分區(qū)硬盤扇區(qū)攔截的技術(shù),通過驅(qū)動級的攔截方式,將數(shù)據(jù)寫往硬盤的數(shù)據(jù)提取,并著先寫到備用服務(wù)器,以保證備用服務(wù)器的數(shù)據(jù)最新,然后再將數(shù)據(jù)回寫到主機(jī)硬盤。這種方式將絕對保證,主備機(jī)數(shù)據(jù)庫的數(shù)據(jù)完全一致,無論發(fā)生哪種切換,都能保證數(shù)據(jù)庫的完整性與連續(xù)性。由于采用分區(qū)攔截技術(shù),所以用戶可以根據(jù)需要在一塊硬盤上劃分適合大小的分區(qū)來完成數(shù)據(jù)同步工作。
(2)硬盤攔截技術(shù),以Symantec的Co-Standby為例,也是一種有效的硬盤攔截軟件,他的攔截主要基于一整塊硬盤,往往在硬盤初始化時(shí)需要消耗大量的時(shí)間。
雙機(jī)熱備中需要指出的幾個概念:
1、(未完,下一頁)
|
|
相關(guān)專業(yè)論文
|
|
推薦專業(yè)論文
|
|
|
|