在容災(zāi)場(chǎng)景中,HyperSwap在IBM System z平臺(tái)配合IBM Geographically Dispersed Parallel Sysplex/Peer to Peer Remote Copy(GDPS/PPRC)一起使用。到目前為止HyperSwap和存儲(chǔ)Metro Mirror技術(shù)都已相當(dāng)成熟,Metro Mirror即Peer to Peer Remote Copy (PPRC)。
本文選自《數(shù)據(jù)中心雙活/災(zāi)備方案設(shè)計(jì)匯總》Lenovo容災(zāi)雙活方案。
PowerHAHyperSwap通過帶SCSI命令在IBM Power服務(wù)器和DS8000存儲(chǔ)之間通信。當(dāng)存儲(chǔ)、交換機(jī)或主機(jī)HBA卡發(fā)生故障時(shí),Cluster Aware AIX (CAA)將檢測(cè)到故障,并產(chǎn)生故障時(shí)間觸發(fā)PowerHA發(fā)生SCSI命令到存儲(chǔ),進(jìn)行主備切換或必要時(shí)處理。CAA也會(huì)觸發(fā)AIX Path Control Module (PCM)切換路徑到對(duì)端存儲(chǔ)上。
典型的PowerHA HyperSwap集群組網(wǎng)拓?fù)浒?個(gè)跨站點(diǎn)DS8800存儲(chǔ), 每個(gè)站點(diǎn)2臺(tái)Power服務(wù)器與另一個(gè)站點(diǎn)2臺(tái)服務(wù)器組成Stretched Cluster,站點(diǎn)內(nèi)網(wǎng)絡(luò)冗余,站點(diǎn)之間通過DWDM波分設(shè)備實(shí)現(xiàn)網(wǎng)絡(luò)互聯(lián)。
當(dāng)主存儲(chǔ)發(fā)生故障時(shí),Power服務(wù)器將會(huì)檢測(cè)事件并做出反應(yīng),執(zhí)行 PPRC 故障轉(zhuǎn)移,因此,應(yīng)用程序的 I/O 活動(dòng)被透明地重定向到另一站點(diǎn)存儲(chǔ)系統(tǒng),以便允許應(yīng)用程序沒有任何中斷地繼續(xù)運(yùn)行。在HyperSwap切換過程中,會(huì)暫時(shí)凍結(jié) I/O 活動(dòng),應(yīng)用程序在此期間不會(huì)遇到故障,而是遇到非致命性的延遲。
PowerHAHyperSwap是一個(gè)AIX內(nèi)核擴(kuò)展且僅支持IBM DS8800 設(shè)備,但到了SVC 7.5版本,SVC和V7000都可以支持HyperSwap技術(shù)了,中端存儲(chǔ)的地位瞬間提升了一個(gè)檔次,通過異構(gòu)的各類中端存儲(chǔ),結(jié)合SVC HyperSwap,都可以實(shí)現(xiàn)跨中心的雙活高可用了,那么究竟SVC HyperSwap是什么技術(shù)? Spectrum Virtualize/SVC HyperSwap技術(shù)可視為對(duì)SVC ESC架構(gòu)的增強(qiáng),HyperSwap結(jié)合VDM也可實(shí)現(xiàn)4副本數(shù)據(jù)方案。其類似Power HyperSwap技術(shù),通過Metro Mirror實(shí)現(xiàn)數(shù)據(jù)在兩個(gè)IO Group之間的同步。但SVC HyperSwap支持如SVC、V7000、V5000、A9000和A9000R等更多平臺(tái),支持在不同產(chǎn)品之間(如A9000和A9000R),建立基于HyperSwap的雙活方案。
從架構(gòu)上來(lái)看,SVC HyperSwap采用了Hyperswap的拓?fù)浼軜?gòu),最少需要兩個(gè)I/O Group,同一I/O Group需要兩個(gè)節(jié)點(diǎn),并在同一個(gè)站點(diǎn),而且很驚喜的發(fā)現(xiàn),每個(gè)站點(diǎn)均有vDisk,主機(jī)映射了四個(gè)SVC節(jié)點(diǎn),存儲(chǔ)路徑更多了,冗余性更高了。SVC HyperSwap由下面多個(gè)技術(shù)組成。
Metro Mirror/Global Mirror:實(shí)現(xiàn)數(shù)據(jù)同步
Global Mirror with Change Volumes:數(shù)據(jù)增量同步時(shí)實(shí)現(xiàn)數(shù)據(jù)一致性
Non-Disruptive Volume Move:實(shí)現(xiàn)Volumes在IOG間的自動(dòng)遷移
外部虛擬化許可(3rd Site仲裁存儲(chǔ)需要)
無(wú)需特定的多路徑軟件支持,采用各個(gè)操作系統(tǒng)自帶標(biāo)準(zhǔn)多路徑,采用ALUA模式即可,相比PowerHA HyperSwap更加靈活。
而SVC Stretched cluster采用的是Stretched的拓?fù)浼軜?gòu),一個(gè)站點(diǎn)一個(gè)SVC節(jié)點(diǎn)最大可達(dá)4個(gè)I/O Group,但是同一I/O Group的兩個(gè)節(jié)點(diǎn)被分割到兩個(gè)站點(diǎn)。兩個(gè)站點(diǎn)的存儲(chǔ)通過SVC虛擬化后只有一個(gè)vDisk,主機(jī)還只是映射兩個(gè)SVC節(jié)點(diǎn)。 再?gòu)男阅苌蟻?lái)看,SVC HyperSwap利用了更多的資源(包括SVC節(jié)點(diǎn),網(wǎng)絡(luò)路徑和SAN交換機(jī)端口等),每個(gè)站點(diǎn)均含有完全獨(dú)立的SVC讀寫緩存,一個(gè)站點(diǎn)失效,另一站點(diǎn)也能提供完全的性能,因?yàn)樽x寫緩存在一站點(diǎn)失效后,不會(huì)被Disable,兩個(gè)站點(diǎn)的讀寫緩存是獨(dú)立的兩套,這點(diǎn)特別重要。 而相比之下,SVC Stretched cluster占用了相對(duì)較少資源,能提供更多的VDISK(同一SVC I/O GroupvDisk也有上限),但是當(dāng)一站點(diǎn)SVC節(jié)點(diǎn)失效后,另一站點(diǎn)的讀寫緩存會(huì)被Disable并進(jìn)入寫直通模式,性能相對(duì)來(lái)說會(huì)下降,在某些情況下,比如后端存儲(chǔ)性能不夠強(qiáng),緩存不夠大等。而且主機(jī)的存儲(chǔ)訪問路徑會(huì)減少一半。 另外一個(gè)主要不同點(diǎn)是,SVC HyperSwap有了Volume Groups(一致性組)這樣概念,它能夠?qū)⒍鄠€(gè)vDisk組合,共同保持高可用和數(shù)據(jù)的一致性,這對(duì)于需要映射多個(gè)vDisk的主機(jī)來(lái)說會(huì)有很大幫助,假設(shè)以下場(chǎng)景(主機(jī)映射多個(gè)vDisk)。
1、站點(diǎn)A失效。
2、應(yīng)用仍然從站點(diǎn)B進(jìn)行讀寫,只在站點(diǎn)B進(jìn)行數(shù)據(jù)更新。
3、站點(diǎn)A恢復(fù)。
4、站點(diǎn)B的vDisk開始同步至站點(diǎn)A的vDisk。
如果主機(jī)的多個(gè)vDisk沒有配置Volume Groups,主機(jī)將很大可能無(wú)法通過站點(diǎn)2的數(shù)據(jù)恢復(fù)業(yè)務(wù),因?yàn)檎军c(diǎn)2的多個(gè)vDisk可能正在被同步,尚未同步完成,它們的數(shù)據(jù)并不在同一時(shí)間點(diǎn),掛在起來(lái)無(wú)法使用,那么這樣的話只能寄希望于站點(diǎn)1。 但是如果主機(jī)的多個(gè)vDisk配置成Volume Groups,主機(jī)是能通過站點(diǎn)2的數(shù)據(jù)進(jìn)行恢復(fù)的,雖然數(shù)據(jù)尚未同步完成,但多個(gè)VDISK間的數(shù)據(jù)一致性是可以保證的,仍然屬于可用狀態(tài),只不過數(shù)據(jù)不完全而已。 但與SVC Stretched cluster類似的是,SVC HyperSwap中的主機(jī)、SVC節(jié)點(diǎn)和存儲(chǔ)均被賦予了站點(diǎn)屬性,同時(shí)也需要配備第三站點(diǎn)作為防范腦裂的仲裁站點(diǎn)。可以看見,一個(gè)Hyperswap卷是由以下幾個(gè)部分組成。
1、4個(gè)vDisk(可以是Thick/Thin/Compressed或加密的)
2、1個(gè)Active Active的Remote Copy Relationship(系統(tǒng)自己控制)
3、4個(gè)FlashCopy Maps(用于Chage Volumes)(系統(tǒng)自己控制)
4、額外的Access IO Group(方便IOGroupFailover)
基于該Hyperswap卷技術(shù),實(shí)現(xiàn)了兩個(gè)站點(diǎn)vDisk的Active Active。站點(diǎn)1的Master vDisk寫入變化時(shí),被寫入站點(diǎn)1的Change Volume中(基于Flash Copy,變化數(shù)據(jù)寫入快照目標(biāo)卷,原卷數(shù)據(jù)不變),站點(diǎn)2的Aux Disk寫入變化時(shí),同樣被寫入站點(diǎn)2的Change Volume中。 一段時(shí)間后,系統(tǒng)自動(dòng)停止vDisk與Change Volume間的快照關(guān)系,Change Volume將回寫變化數(shù)據(jù)至vDisk,VDISK將通過SVC PPRC同步變化數(shù)據(jù)至另一站點(diǎn)的vDisk中,之后,站點(diǎn)vDisk又將重新與Change Volume建立快照關(guān)系,根據(jù)這一原理不斷往返變化數(shù)據(jù),保持4份Copy數(shù)據(jù)的同步的關(guān)系,當(dāng)然這些都是SVCHyperswap系統(tǒng)自動(dòng)完成的,用戶無(wú)需干預(yù)。
另外在Hyperswap的卷復(fù)制Active Active關(guān)系中,我們可以看到依然存在Master或者AUX的標(biāo)簽,對(duì)于主機(jī)來(lái)說,兩個(gè)站點(diǎn)的其中一個(gè)I/O Group的vDisk是作為Primary提供讀寫,所有讀寫請(qǐng)求必須經(jīng)過該I/O Group,然而Hyperswap會(huì)自動(dòng)決定是本站點(diǎn)的I/O Group的vDisk作為Primary,還是主要承擔(dān)I/O流量的I/O Group的vDisk作為Primary。 在首次創(chuàng)建Hyperswap卷和初始化后,被標(biāo)簽為Master的vDisk作為Primary,但是如果連續(xù)10分鐘以上主要I/O流量是被AUX的vDisk承擔(dān),那么系統(tǒng)將會(huì)轉(zhuǎn)換這種Master和AUX的關(guān)系,從這點(diǎn)上也可以看出與SVC Stretched cluster的不同,雖然SVC節(jié)點(diǎn)一樣被賦予站點(diǎn)屬性,但SVCHyperswap在另一站點(diǎn)仍然活動(dòng)時(shí),不局限于只從本地站點(diǎn)讀寫,它會(huì)考量最優(yōu)存儲(chǔ)訪問I/O流量,從而保持整個(gè)過程中主機(jī)存儲(chǔ)讀寫性能。 另外需要注意的是主要的I/O流量是指扇區(qū)的數(shù)量而不是I/O數(shù)量,并且需要連續(xù)10分鐘75%以上,這樣可以避免頻繁的主從切換。上面講了這么多,那么SVCHyperswap的讀寫I/O又是如何流轉(zhuǎn)的呢?讀I/O見下圖。
可以看到,每個(gè)站點(diǎn)第一次HyperSwp初始化后,先各自從各自站點(diǎn)的SVC節(jié)點(diǎn)讀操作,綠色線為讀操作I/O流轉(zhuǎn)。寫I/O見下圖。
從上面可以看到,圖中顯示了站點(diǎn)1的主機(jī)一次寫I/O全過程,來(lái)看看每一步的處理流程。
1、主機(jī)向本站點(diǎn)1的其中一個(gè)SVC節(jié)點(diǎn)發(fā)送寫I/O請(qǐng)求。
2、該SVC節(jié)點(diǎn)2將寫I/O寫入緩存,并回復(fù)主機(jī)響應(yīng)。
3、該SVC節(jié)點(diǎn)2將寫I/O寫入節(jié)點(diǎn)1緩存,并同時(shí)發(fā)送寫I/O至站點(diǎn)2的節(jié)點(diǎn)3和節(jié)點(diǎn)4。
4、SVC節(jié)點(diǎn)1、3、4回復(fù)節(jié)點(diǎn)2的響應(yīng)。
5、兩個(gè)站點(diǎn)的SVC節(jié)點(diǎn)分別將緩存寫入各自站點(diǎn)的存儲(chǔ)當(dāng)中。
前面文章討論了SVC Stretched Cluster雙活方案,在文章最后,一起來(lái)簡(jiǎn)單總結(jié)下SVC HyperSwap有哪些區(qū)別和優(yōu)勢(shì)。
ESC(Enhancedstretchedcluster)模式下的IOGroup并不是真正的冗余模式。比如有2個(gè)IO Group,業(yè)務(wù)都在IO Group1上,當(dāng)IO Group的兩個(gè)節(jié)點(diǎn)都宕機(jī)的話前端業(yè)務(wù)也就中斷了,業(yè)務(wù)并不會(huì)自動(dòng)切換到IO Group2上。而HyperSwap雖然本地的SVC和IOGroup跟遠(yuǎn)端站點(diǎn)相對(duì)獨(dú)立,但存在容災(zāi)冗余關(guān)系,有更好的可靠性。
事實(shí)上EnhancedStretchCluster與SVCHyperSwap的最大特性就具備SVC節(jié)點(diǎn)“站點(diǎn)化”,主機(jī)節(jié)點(diǎn)“站點(diǎn)化”,存儲(chǔ)節(jié)點(diǎn)“站點(diǎn)化”,這兩種模式都是同一站點(diǎn)的主機(jī)讀寫同一站點(diǎn)的SVC的節(jié)點(diǎn),SVC節(jié)點(diǎn)讀寫同一站點(diǎn)的存儲(chǔ)節(jié)點(diǎn)。所以這兩種Active active存儲(chǔ)雙活方案都采用就近讀寫,然而SVC HyperSwap不僅僅是就近讀寫,它還根據(jù)站點(diǎn)流量,自動(dòng)反轉(zhuǎn)站點(diǎn)讀寫關(guān)系來(lái)優(yōu)化IO效率。
HyperSwap支持把多個(gè)vDisk配置成了VolumeGroups(一致性組)的形式,保證兩個(gè)站點(diǎn)的多個(gè)vDisk同時(shí)寫的數(shù)據(jù)一致性,從存儲(chǔ)視角來(lái)說,站點(diǎn)內(nèi)多vDisk數(shù)據(jù)是一致性的。
以下內(nèi)容來(lái)自“Lenovo容災(zāi)雙活方案”,內(nèi)容包含中小心數(shù)據(jù)中心雙活方案 – HyperSwap、大型數(shù)據(jù)中心的雙活方案 – SVC、聯(lián)想容災(zāi)雙活專業(yè)實(shí)施與服務(wù)。
審核編輯 :李倩
-
存儲(chǔ)
+關(guān)注
關(guān)注
13文章
4320瀏覽量
85912 -
交換機(jī)
+關(guān)注
關(guān)注
21文章
2645瀏覽量
99737 -
數(shù)據(jù)中心
+關(guān)注
關(guān)注
16文章
4792瀏覽量
72182
原文標(biāo)題:深入剖析SVC HyperSwap雙數(shù)據(jù)中心
文章出處:【微信號(hào):架構(gòu)師技術(shù)聯(lián)盟,微信公眾號(hào):架構(gòu)師技術(shù)聯(lián)盟】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論