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