在當(dāng)今的企業(yè)環(huán)境中,高可用性已經(jīng)變成了必須達(dá)到的指標(biāo)。隨著數(shù)據(jù)增長(zhǎng)速度的持續(xù)提高,數(shù)據(jù)可用性的重要性也不斷升級(jí)。而隨著企業(yè)和應(yīng)用的增長(zhǎng),相關(guān)的數(shù)據(jù)中心基礎(chǔ)設(shè)施也必須隨之?dāng)U展。由互聯(lián)網(wǎng)引發(fā)的向全球經(jīng)濟(jì)的轉(zhuǎn)移已經(jīng)使正常運(yùn)作從8×5模式轉(zhuǎn)向了24×7模式。在這種“全天候”運(yùn)作模式中,對(duì)高可用性的要求越來(lái)越高。為保持企業(yè)正常運(yùn)作,作為公司最重要的資源的數(shù)據(jù)必須隨時(shí)可用。不僅丟失數(shù)據(jù)會(huì)帶來(lái)災(zāi)難性后果,中斷數(shù)據(jù)訪(fǎng)問(wèn)也會(huì)使企業(yè)造成重要損失。
99%的正常運(yùn)行時(shí)間看似很高,但這種“高度可用的”環(huán)境仍然意味著每年有83小時(shí)以上的停運(yùn)。無(wú)論是哪種規(guī)模的企業(yè),都將遭受?chē)?yán)重影響。為設(shè)計(jì)高度可用的解決方案時(shí),必須考慮停機(jī)的成本。對(duì)于金融經(jīng)紀(jì)公司而言,99%的正常運(yùn)行時(shí)間意味著每年將會(huì)損失5.4億美元的收入。
|
|
資料來(lái)源:光纖通道行業(yè)協(xié)會(huì)1;Horison公司。
如果正常運(yùn)作時(shí)間能提高到99.999%,收入損失就可以縮減到每年540,000美元。
1. “災(zāi)難來(lái)臨時(shí)的業(yè)務(wù)連續(xù)性”,光纖通道行業(yè)協(xié)會(huì),http://www.fibrechannel.com/technology/index.master.html。
但是,實(shí)現(xiàn)99.999%的正常運(yùn)作絕非易事,其中高度可用的存儲(chǔ)基礎(chǔ)設(shè)施是實(shí)現(xiàn)高數(shù)據(jù)可用性的核心,包括獨(dú)立磁盤(pán)冗余陣列(RAID)技術(shù)、在一個(gè)集群系統(tǒng)上保存多份數(shù)據(jù)、遠(yuǎn)程集群、存儲(chǔ)局域網(wǎng)(SAN)和可靠磁帶備份等。值得注意的是,SAN體系結(jié)構(gòu)支持的企業(yè)級(jí)高可用性配置不但能隨著企業(yè)的發(fā)展而擴(kuò)展,還能保護(hù)企業(yè)的數(shù)據(jù)存儲(chǔ)投資。設(shè)計(jì)高度可用的SAN時(shí)需要考慮的因素包括:
其中的某些事件,例如硬件故障和斷電等,可以通過(guò)設(shè)計(jì)加固予以解決。但是,人工錯(cuò)誤等問(wèn)題則無(wú)法通過(guò)設(shè)計(jì)有效解決。
存儲(chǔ)正常運(yùn)行時(shí)間對(duì)整個(gè)機(jī)構(gòu)能否實(shí)現(xiàn)提高可用性至關(guān)重要。每位員工都必須通過(guò)應(yīng)用服務(wù)器或者直接從工作站訪(fǎng)問(wèn)存儲(chǔ)才能制訂關(guān)鍵業(yè)務(wù)決策。如果存儲(chǔ)可用性出現(xiàn)問(wèn)題,整個(gè)機(jī)構(gòu)的運(yùn)作都會(huì)受到影響。
為避免這種問(wèn)題,必須實(shí)現(xiàn)最高的正常運(yùn)行時(shí)間,才能限制或消除對(duì)業(yè)務(wù)運(yùn)行的影響。
圖1
企業(yè)的高可用性?xún)?yōu)先順序
設(shè)計(jì)高可用性解決方案
設(shè)計(jì)高度可用的存儲(chǔ)環(huán)境時(shí),必須采用端到端方法,即只考慮存儲(chǔ)解決方案組件是不夠的,必須考慮以下所有組件:
存儲(chǔ)子系統(tǒng)
設(shè)計(jì)高度可用的解決方案時(shí),必須考慮存儲(chǔ)子系統(tǒng)的以下三個(gè)方面:
數(shù)據(jù)保護(hù)
圖2
同步數(shù)據(jù)復(fù)制模型
子系統(tǒng)連接
存儲(chǔ)連接與存儲(chǔ)本身的完整性同樣重要。如果應(yīng)用無(wú)法訪(fǎng)問(wèn)其存儲(chǔ),就無(wú)法正常工作。因此,存儲(chǔ)子系統(tǒng)供應(yīng)存儲(chǔ)的方式對(duì)整個(gè)存儲(chǔ)高可用性解決方案非常重要。
圖3
能實(shí)現(xiàn)高可用性的冗余磁盤(pán)子系統(tǒng)接口
子系統(tǒng)硬件冗余性
存儲(chǔ)網(wǎng)絡(luò)
提供主機(jī)與存儲(chǔ)之間的連接的網(wǎng)絡(luò)或矩陣也是整個(gè)高可用性解決方案中的重要一環(huán)。為保證設(shè)計(jì)中不出現(xiàn)單故障點(diǎn),最好使用最佳實(shí)踐。這種設(shè)計(jì)實(shí)踐還有利于采用合理的冗余性,因?yàn)檫^(guò)度冗余將延長(zhǎng)故障恢復(fù)時(shí)間。
存儲(chǔ)網(wǎng)絡(luò)硬件
存儲(chǔ)網(wǎng)絡(luò)設(shè)計(jì)
圖4
設(shè)計(jì)采用隔離矩陣的SAN
應(yīng)用主機(jī)
主機(jī)總線(xiàn)適配器(HBA)是應(yīng)用服務(wù)器與SAN之間的接口。與網(wǎng)卡相似,它們也可以插入到服務(wù)器中的總線(xiàn)插槽中。雖然多數(shù)服務(wù)器產(chǎn)生的輸入/輸出(I/O)都不會(huì)對(duì)一條光纖通道鏈路形成壓力,但高可用性(HA)環(huán)境仍然要求雙HBA。兩個(gè)或多個(gè)HBA能夠提供多條存儲(chǔ)路徑,以便在一個(gè)HBA發(fā)生故障時(shí)實(shí)現(xiàn)故障恢復(fù),平時(shí)則在HBA之間平衡負(fù)載。這種“多路徑”可以用多種方式實(shí)現(xiàn),提高HBA可用性的途徑包括:
提高存儲(chǔ)網(wǎng)絡(luò)的可用性
Cisco MDS 9500系列多層導(dǎo)向器提供很多硬件和軟件特性,能夠支持光纖通道網(wǎng)絡(luò)內(nèi)的高級(jí)可用性。
硬件特性
下面介紹Cisco MDS 9500系列多層導(dǎo)向器中高可用性涉及的硬件特性。
交換管理引擎模塊
Cisco MDS 9500系列多層導(dǎo)向器允許在一個(gè)機(jī)箱中安裝兩個(gè)交換管理引擎模塊,以實(shí)現(xiàn)冗余性。每個(gè)模塊都包含控制引擎和交換矩陣。控制引擎是負(fù)責(zé)管理整個(gè)系統(tǒng)的中央處理器。另外,控制引擎還參與所有網(wǎng)絡(luò)控制協(xié)議,包括所有光纖通道服務(wù)。在冗余系統(tǒng)中,兩個(gè)控制引擎以主用/備用模式操作,其中一個(gè)控制引擎一直作為主用控制引擎。備用控制引擎處于狀態(tài)化等待模式,所有主機(jī)管理和控制協(xié)議都與主用控制引擎保持同步。盡管備用控制引擎并不真正管理交換機(jī),但仍然從主用控制引擎連續(xù)接收信息,以便在兩臺(tái)控制引擎中同時(shí)保留交換機(jī)的狀態(tài)信息。一旦主用控制引擎發(fā)生故障,備用控制引擎將能夠無(wú)縫接管主用控制引擎的所有任務(wù)。
交換矩陣是系統(tǒng)的交換引擎,即系統(tǒng)內(nèi)所有端口之間的高速交換路徑矩陣。交換矩陣嵌入在每個(gè)交換管理引擎模塊中,如果冗余系統(tǒng)中配備了兩個(gè)交換管理引擎模塊,也就配備了兩個(gè)交換矩陣。兩個(gè)交換矩陣以負(fù)載共擔(dān)主用?主用模式操作。每個(gè)交換矩陣都總共擁有720Gbps的交換容量,并為每個(gè)插槽提供80Gbps帶寬。由于Cisco MDS 9500系列的每個(gè)交換模塊不消耗為交換矩陣提供的80Gbps帶寬,因此,即使只有一個(gè)交換管理引擎模塊,系統(tǒng)也能全性能運(yùn)作。在滿(mǎn)負(fù)荷Cisco MDS 9500系列導(dǎo)向器中,即使其中某一交換管理引擎模塊出現(xiàn)了故障,或者卸掉了一個(gè)交換管理引擎模塊,系統(tǒng)性能也不會(huì)有任何下降。
交換管理引擎模塊屬于可熱插拔模塊。在雙交換管理引擎模塊系統(tǒng)中,模塊的插拔和更換不會(huì)對(duì)系統(tǒng)其它部分造成任何影響。
圖5
Cisco MDS 9500系列交換系統(tǒng)
電源
Cisco MDS 9500系列多層導(dǎo)向器支持雙冗余電源。電源以主用?主用配置操作,但相互獨(dú)立運(yùn)行。當(dāng)一個(gè)電源發(fā)生故障時(shí),另一個(gè)電源足以為整個(gè)系統(tǒng)供電。每個(gè)電源都是可熱插拔的。由于一個(gè)電源就能為整個(gè)系統(tǒng)供電,因而能夠熱更換故障電源。
系統(tǒng)風(fēng)扇
Cisco MDS 9500系列多層導(dǎo)向器使用一個(gè)風(fēng)扇為整個(gè)系統(tǒng)制冷。雖然看似屬于非冗余組件,但組件內(nèi)部采用的是N+1冗余配置。風(fēng)扇組中的每個(gè)風(fēng)扇都單獨(dú)監(jiān)控。如果某個(gè)風(fēng)扇發(fā)生了故障,系統(tǒng)將及時(shí)向最終用戶(hù)通報(bào)情況。事實(shí)上,即使有多個(gè)風(fēng)扇出現(xiàn)故障,系統(tǒng)運(yùn)行也不受影響。在正常的操作環(huán)境下,系統(tǒng)允許四個(gè)風(fēng)扇同時(shí)停轉(zhuǎn)。整個(gè)風(fēng)扇組件是可熱插拔的,系統(tǒng)可以在不安裝風(fēng)扇組件的情況下連續(xù)工作30分鐘,因此,管理員完全可以在保持系統(tǒng)正常操作的情況下更換風(fēng)扇。
軟件特性
與只依賴(lài)硬件冗余性提高可用性的傳統(tǒng)光纖通道交換機(jī)不同,Cisco MDS 9500系列提供一組強(qiáng)大的硬件特性,能夠大大增強(qiáng)典型存儲(chǔ)網(wǎng)絡(luò)中的硬件冗余性。
不間斷軟件升級(jí)
每年,計(jì)劃內(nèi)停機(jī)時(shí)間都占設(shè)備總停機(jī)時(shí)間的很大比例。計(jì)劃內(nèi)停機(jī)的首要原因是對(duì)網(wǎng)絡(luò)設(shè)備中的軟件進(jìn)行升級(jí),例如修復(fù)軟件缺陷,或者添加新功能。但是,無(wú)論出于何種原因,計(jì)劃內(nèi)停機(jī)都將對(duì)業(yè)務(wù)運(yùn)行造成影響。作為導(dǎo)向器級(jí)光纖通道交換機(jī)的重要特性之一,交換機(jī)必須能夠在不影響SAN上流量正常傳輸?shù)那闆r下加載和激活交換機(jī)上的新軟件。
Cisco MDS 9500系列多層導(dǎo)向器能夠在不影響交換機(jī)上流量的前提下隨時(shí)升級(jí)交換管理引擎模塊和交換模塊上的軟件。在升級(jí)過(guò)程中,用戶(hù)可以選擇同時(shí)升級(jí)兩個(gè)交換管理引擎,或者只升級(jí)主用交換管理引擎,即讓主用交換管理引擎運(yùn)行新版本,而讓備用交換管理引擎運(yùn)行老版本。如果新版本出現(xiàn)錯(cuò)誤,可以立即恢復(fù)到運(yùn)行老版本的備用交換管理引擎。這種方式既能提高軟件升級(jí)的靈活性,又能立即返回原來(lái)的穩(wěn)定軟件版本。
內(nèi)部流程重啟
Cisco MDS 9500系列的另一個(gè)獨(dú)特功能是失敗軟件流程重新啟動(dòng)。交換管理引擎模塊能夠持續(xù)監(jiān)控所有軟件流程。如果流程失敗,交換管理引擎可以在不影響交換機(jī)內(nèi)流量流動(dòng)的情況下重新啟動(dòng)該流程。這個(gè)特性能夠提高可靠性,因?yàn)槿绻鞒棠軌蛑匦聠?dòng),將不需要對(duì)交換管理引擎執(zhí)行故障恢復(fù)。如果流程不能重新啟動(dòng),或者重新啟動(dòng)后仍然無(wú)法正常執(zhí)行,主用交換管理引擎模塊將切換到備用交換管理引擎模塊。
目前,許多SAN設(shè)計(jì)者都因各種理由而建立了獨(dú)立的存儲(chǔ)網(wǎng)絡(luò)。在本文中,獨(dú)立存儲(chǔ)網(wǎng)絡(luò)指物理上完全隔離、用于將主機(jī)與存儲(chǔ)相連的交換機(jī)或交換機(jī)組。某些常見(jiàn)的理由包括:
雖然這些建立獨(dú)立網(wǎng)絡(luò)的這些原因都很合理,但卻十分浪費(fèi)。添加網(wǎng)絡(luò)不但意味著添置硬件,增加資本投入,還意味著硬件利用率的降低。
為了既能實(shí)現(xiàn)環(huán)境的隔離,又能縮減建立物理分割網(wǎng)絡(luò)的成本,思科在Cisco MDS 9000系列中開(kāi)發(fā)了虛擬SAN(VSAN)。VSAN能夠在同一個(gè)物理基礎(chǔ)設(shè)施之上建立多個(gè)獨(dú)立的虛擬網(wǎng)絡(luò)。利用ISL鏈路上基于硬件的幀標(biāo)記功能,每個(gè)獨(dú)立的虛擬網(wǎng)絡(luò)將相互隔離。EISL鏈路是增強(qiáng)型ISL鏈路,它包括每個(gè)幀的附加標(biāo)記信息,已經(jīng)在連接任何Cisco MDS 9000系列交換機(jī)產(chǎn)品的鏈路上得到了支持。VSAN的成員關(guān)系根據(jù)物理端口而定,任何物理端口都不能同時(shí)屬于多個(gè)VSAN。因此,與物理端口相連的任何節(jié)點(diǎn)都將成為該端口隸屬的VSAN的成員。
VSAN能夠?yàn)橛脩?hù)提供極高的靈活性。例如,在Cisco MDS 9000系列產(chǎn)品中,每個(gè)物理基礎(chǔ)設(shè)施能夠支持1024個(gè)VSAN。每個(gè)VSAN都可以添加或者從EISL(增強(qiáng)型ISL)_Link中刪除,以便控制VSAN的范圍。另外,為根據(jù)每個(gè)VSAN的狀態(tài),還配備了特殊的流量計(jì)數(shù)器。
VSAN最大的特點(diǎn)是能夠提高可用性。VSAN不但能提供嚴(yán)格的硬件隔離,還能為每個(gè)新VSAN建立一套復(fù)制的光纖通道服務(wù)。因此,建立新VSAN時(shí),將同時(shí)為支持新VSAN的交換機(jī)創(chuàng)建并激活完全隔離的一組服務(wù),包括名稱(chēng)服務(wù)器、分區(qū)服務(wù)器、域名控制器、別名服務(wù)器和登錄服務(wù)器。這組服務(wù)副本能夠建立相互隔離的環(huán)境,解決同一個(gè)物理基礎(chǔ)設(shè)施上的高可用性問(wèn)題。例如,在VSAN 1中安裝主分區(qū)集不會(huì)對(duì)VSAN 2中的操作構(gòu)成任何影響。
另外,利用VSAN還可以通過(guò)長(zhǎng)途基礎(chǔ)設(shè)施將遠(yuǎn)程數(shù)據(jù)中心里的隔離網(wǎng)絡(luò)連接在一起。由于幀標(biāo)記在硬件中執(zhí)行,并包含在每個(gè)EISL幀中,因而可以通過(guò)多種介質(zhì)傳輸,例如密集波分多路復(fù)用(DWDM)或粗波分多路復(fù)用(CWDM)等。因此,來(lái)自多個(gè)VSAN的流量可以通過(guò)同一對(duì)光纖多路傳輸,不但增加了傳輸距離,還能保持完全隔離。由于VSAN能夠利用通用冗余物理基礎(chǔ)設(shè)施建立靈活的隔離矩陣,因而大大提高了可擴(kuò)展性,并最終實(shí)現(xiàn)了高可用性目標(biāo)。
圖6
利用VSAN降低SAN復(fù)雜性
隨著光纖通道矩陣的增大,越來(lái)越多的交換機(jī)都必須滿(mǎn)足端口數(shù)量要求。ISL支持交換機(jī)之間的連接。與SAN中的所有其它連接相似,這些連接也必須采用冗余配置。利用思科的PortChannel技術(shù),可以將16條獨(dú)立物理鏈路整合成兩臺(tái)交換機(jī)之間的一條邏輯ISL鏈路。這種方式不但能建立完全永續(xù)的邏輯鏈路,還能在兩臺(tái)交換機(jī)之間提供32Gbps的帶寬。思科PortChannel技術(shù)的主要優(yōu)點(diǎn)是,捆綁式物理鏈路可以位于交換機(jī)任何交換模塊的任何端口上。將物理鏈路分布在多個(gè)交換模塊之后,不但能為鏈路故障提供保護(hù)(例如電纜斷裂和光纖瑕疵),還能防止交換模塊失效。
圖7
Cisco MDS 9500系列中的端口通道
Cisco MDS 9500系列多層導(dǎo)向器在PortChannel上支持兩種負(fù)載平衡算法。第一種算法先查看幀的源和目標(biāo)FC_ID,再進(jìn)入PortChannel,然后通過(guò)源和目標(biāo)FC_ID在幀內(nèi)創(chuàng)建硬件分區(qū),作為這些流量應(yīng)該在虛擬鏈路中采用哪條物理鏈路的索引。來(lái)自這個(gè)源?目標(biāo)FC_ID對(duì)的流量將一直使用同一條鏈路傳輸。其它源?目標(biāo)FC_ID組合將制訂獨(dú)立鏈路決策,有可能通過(guò)或者不通過(guò)同一條鏈路傳輸。從目標(biāo)到源的流量不必要通過(guò)同一條物理鏈路傳輸,因?yàn)槟繕?biāo)方交換機(jī)也在對(duì)鏈路流量執(zhí)行獨(dú)立決策。
Cisco MDS 9500系列中的第二種算法是根據(jù)源?目標(biāo)FC_ID以及操作的Exchange_ID(OX_ID,RX_ID)平衡負(fù)載。每次執(zhí)行操作時(shí),都使用一個(gè)新的Exchange_ID,并制訂新的物理鏈路決策。即使在相同的源節(jié)點(diǎn)與目標(biāo)節(jié)點(diǎn)之間,這種方法也能大大提高整個(gè)PortChannel的效率。利用這種算法,來(lái)自相同源節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)的交換可以沿PortChannel鏈路分布,且仍然能夠保持任何一次交換中所有幀的順序。
基于角色的安全性
安全性一般不與高可用性一起考慮。但是,人工錯(cuò)誤是引起停機(jī)的主要原因之一。用戶(hù)可能沒(méi)有意識(shí)到某項(xiàng)命令的結(jié)果就錯(cuò)誤地了執(zhí)行了這個(gè)命令。Cisco MDS 9000系列多層導(dǎo)向器和矩陣交換機(jī)支持基于角色的安全方法,以保證只有合法個(gè)人才能訪(fǎng)問(wèn)網(wǎng)絡(luò)內(nèi)的主要功能。管理員將為每個(gè)用戶(hù)指定一個(gè)角色,用group_ID表示,用以說(shuō)明在網(wǎng)絡(luò)內(nèi)的特定訪(fǎng)問(wèn)權(quán)限。這種訪(fǎng)問(wèn)權(quán)限規(guī)定了可以執(zhí)行的命令,即某個(gè)權(quán)限可以訪(fǎng)問(wèn)命令行界面(CLI)命令解析器樹(shù)的哪些節(jié)點(diǎn)。例如,管理員可以規(guī)定一個(gè)稱(chēng)為“no_debug”的角色,這個(gè)角色可以執(zhí)行debug命令以外的任何命令。這種許可系統(tǒng)可以精確地解析器樹(shù)中的第2個(gè)級(jí)別,因此,管理員甚至可以規(guī)定一個(gè)稱(chēng)為“no_debug_fspf”的角色,這個(gè)角色允許用戶(hù)執(zhí)行任何系統(tǒng)命令,包括debug命令,但FSPF debug命令除外。角色可以利用CLI命令在交換機(jī)內(nèi)規(guī)定和分配。為簡(jiǎn)化管理,還可以在Radius服務(wù)器中集中分配角色。系統(tǒng)提供兩個(gè)默認(rèn)角色,稱(chēng)為網(wǎng)絡(luò)管理員(完全訪(fǎng)問(wèn))和網(wǎng)絡(luò)操作員(只讀訪(fǎng)問(wèn))。用戶(hù)最多可以規(guī)定64個(gè)具體角色。只有擔(dān)當(dāng)網(wǎng)絡(luò)管理員角色的用戶(hù)才能創(chuàng)建新角色。
圖8
Cisco MDS 9500系列基于角色的訪(fǎng)問(wèn)特性
總結(jié)
存儲(chǔ)網(wǎng)絡(luò)中的停機(jī)將對(duì)整個(gè)商業(yè)基礎(chǔ)設(shè)施造成巨大影響,使企業(yè)每年蒙受數(shù)百萬(wàn)美元的損失。通過(guò)設(shè)計(jì)高度靈活的強(qiáng)大存儲(chǔ)局域網(wǎng),可以顯著縮短甚至消除停機(jī)時(shí)間。Cisco MDS 9500系列多層導(dǎo)向器提供硬件冗余性和可靠性,能夠?qū)崿F(xiàn)99.999%的硬件正常運(yùn)行時(shí)間。除硬件冗余性外,Cisco MDS 9500系列還提供永續(xù)性極高的軟件,能夠利用全新的高可用性特性集消除存儲(chǔ)網(wǎng)絡(luò)中的停機(jī)情況。