服務(wù)器故障切換恢復(fù)
前面的部分討論了如何利用網(wǎng)絡(luò)負(fù)載均衡(NLB)和 Microsoft Cluster Service (MSCS)消除單點(diǎn)故障。 這一部分的目的是要介紹,當(dāng)您在企業(yè)部署種使用了 NLB 和MSCS 時(shí),MSIB 2.0 是如何從故障種恢復(fù)過來的。
ISA 故障切換
在 ISA 服務(wù)器因服務(wù)器故障而出現(xiàn)故障的時(shí)候, NLB 軟件(運(yùn)行在 ISA 服務(wù)器之上)將會(huì)把故障服務(wù)器從 NLB 群集中刪除掉。 在 ISA 服務(wù)器因連接、RPC 或磁盤故障而出現(xiàn)故障的時(shí)候,ISA 服務(wù)器會(huì)將自己從群集中脫離開。 后的結(jié)果是,仍然正常的冗余服務(wù)器將會(huì)把所有的請求接管過來。
NLB 故障切換
當(dāng)某一表示層服務(wù)器不能發(fā)送或響應(yīng)心跳消息的時(shí)候,其他服務(wù)器將會(huì)進(jìn)行收斂。 后的結(jié)果是,仍然可對(duì)請求作出響應(yīng)的表示服務(wù)器會(huì)為故障服務(wù)器處理所有的入站請求。 當(dāng)某臺(tái)新的表示服務(wù)器試圖加入到該群集的時(shí)候,它將會(huì)發(fā)出一個(gè)意在收斂的心跳消息。 當(dāng)所有的表示服務(wù)器都同意接受該成員的時(shí)候,將會(huì)對(duì)客戶端的工作量重新劃分。
SQL Server MSCS 數(shù)據(jù)庫故障切換
SQL Server 使用了一套共享的磁盤子系統(tǒng),它可以以一個(gè)群集服務(wù)器的形式工作。 當(dāng)群集中的某活動(dòng) SQL 服務(wù)器出現(xiàn)故障的時(shí)候,備用的 SQL 服務(wù)器將會(huì)接管故障服務(wù)器的負(fù)載,處理客戶請求,從同一共享盤上讀取和寫數(shù)據(jù),如下圖所示。
確定預(yù)期的可用性
這一部分將介紹一個(gè)計(jì)算實(shí)例,MSIB 項(xiàng)目組為本文使用了這種計(jì)算方法以確定 MSIB 2.0 企業(yè)部署的可用性,也稱為預(yù)期的正常運(yùn)行時(shí)間。 這一實(shí)例是根據(jù) Microsoft Technical Report 中的Markov Model of Availability for Server Clusters 中的數(shù)學(xué)模型給出的,地址在 http://go.microsoft.com/fwlink/?LinkId=15127.
在這一模型中需要考慮五個(gè) MSIB 2.0 企業(yè)部署的群集。 這五個(gè)群集都是由兩個(gè)節(jié)點(diǎn)/計(jì)算機(jī)構(gòu)成的,它們必需能夠正常運(yùn)行,令那些考慮要可用的系統(tǒng)真正可用。 出于這一分析的考慮,群集列舉如下:
1.面向 Internet 的防火墻 NLB 群集
2.Web NLB 群集
3.搜索 NLB 群集
4.內(nèi)部防火墻 NLB 群集
5.SQL Server 群集
每個(gè)群集都有一個(gè)可用性,p n 其中,0n <=1。 整個(gè)系統(tǒng)的可用性由以下的計(jì)算得到:
p1 X p2 X p3 X p4 X p5
群集內(nèi)每個(gè)節(jié)點(diǎn)的可用性可以通過帶入以下三個(gè)數(shù)值的平均測量值得到。
故障切換時(shí)間 是指從群集發(fā)現(xiàn)某一節(jié)點(diǎn)停止響應(yīng)到將其從群集內(nèi)刪除所花的時(shí)間。
平均恢復(fù)時(shí)間(MTTR) 是指將該要素重新引入群集所花的平均時(shí)間。
平均無故障時(shí)間(MTTF) 是難測量的一個(gè)指標(biāo)。 故障可能會(huì)按照一定的頻率發(fā)生,不過也可能是隨機(jī)發(fā)生的。 為了進(jìn)行討論,在計(jì)算過程中允許您在可用性計(jì)算時(shí)對(duì) MTTF 進(jìn)行變動(dòng)。 之所以這么做是為了幫助您判斷要確保特定數(shù)量的九的可用性,您的部署必需要滿足或必需要超過的 MTTF 。 這是本文計(jì)算可用性的方法與其他方法的根本差別。
MSIB 項(xiàng)目組首先切斷活動(dòng)-活動(dòng)群集中來自服務(wù)器/節(jié)點(diǎn)的基本網(wǎng)絡(luò)連接,然后再重新啟用這些連接,通過這種方法測量了企業(yè)部署的恢復(fù)時(shí)間和故障切換時(shí)間。 對(duì)于活動(dòng)——被動(dòng) SQL 群集,項(xiàng)目組從群集管理控制臺(tái)執(zhí)行了一個(gè)移動(dòng)組命令。 如需了解關(guān)于如何測定恢復(fù)時(shí)間和故障切換時(shí)間的更多信息,參見“附件 C——Collecting Availability Data”。 請注意由 MSIB 項(xiàng)目組為本文所述測試部署的系統(tǒng)是按照 MSIB 2.0 隨帶的 MSIB 2.0 Deployment Guides 中所述的嚴(yán)格的設(shè)置和配置進(jìn)行部署的。
ISA NLB 群集
ISA 網(wǎng)絡(luò)負(fù)載均衡(NLB)群集是一種雙節(jié)點(diǎn)的 NLB Web 服務(wù)器群集。 這一系統(tǒng)的可用性是根據(jù)服務(wù)器群集可用性的馬爾可夫模型(MMASC)計(jì)算的。 這一實(shí)例是根據(jù) Microsoft Technical Report 中的Markov Model of Availability for Server Clusters 中的數(shù)學(xué)模型給出的,地址在 http://go.microsoft.com/fwlink/?LinkId=15127對(duì)這一群集來說,MSIB 項(xiàng)目組發(fā)現(xiàn)其平均故障切換時(shí)間為 3 分鐘,MTTR 時(shí)間為 9 分鐘 56 秒。