




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 主流存儲雙活架構(gòu)設(shè)計讀寫性能對比分析 目 錄 TOC o 1-3 h z u HYPERLINK l _Toc66545060 主流存儲雙活架構(gòu)設(shè)計讀寫性能對比分析 PAGEREF _Toc66545060 h 1 HYPERLINK l _Toc66545061 一、華為 HyperMetro PAGEREF _Toc66545061 h 3 HYPERLINK l _Toc66545062 二、 EMC VPLEX PAGEREF _Toc66545062 h 8 HYPERLINK l _Toc66545063 三、 IBM SVC PAGEREF _Toc66545063 h 10
2、HYPERLINK l _Toc66545064 四、 HDS GAD PAGEREF _Toc66545064 h 16 HYPERLINK l _Toc66545065 五、 NetApp MetroCluster PAGEREF _Toc66545065 h 20【摘要】對華為 HyperMetro 、 EMC Vplex 、 IBM SVC 、 HDS GAD 和 NetApp MetroCluster 等五個廠商存儲雙活方案的特點、仲裁需求、仲裁機制和兩地三中心擴展方案進行了詳細的解析。在本篇文章中,作者將從另一個角度,也是存儲雙活方案的另一大關(guān)鍵點 讀寫性能入手,剖析這五種存儲跨中
3、心雙活方案的 I/O 讀寫流程和對業(yè)務(wù)主機帶來的性能影響。性能影響問題是存儲雙活方案的突出問題,因為雙活系統(tǒng)在寫入數(shù)據(jù)時,會寫兩次數(shù)據(jù),尤其是通過復(fù)制功能寫到遠端存儲的過程,傳輸鏈路的性能也會影響整體性能。因此,存儲雙活不可避免要遇到性能問題,這也是各大廠商存儲雙活方案標明最大支持 RTT 或者站點間距的原因之一。相比單存儲直接提供讀寫來說,存儲雙活一定會增加讀寫響應(yīng)時間,更別說存儲還是跨兩個不同數(shù)據(jù)中心的,隨著距離的增加,理論上每增加 100KM ,會增加 1MS 的 RTT (往返延遲時間),通常單個 I/O 總耗時在 1-3MS 左右,就會認為單個存儲 I/O 時延處于比較高性能的模式(
4、最大支持的 IOPS 也是存儲選型的重要考慮因素),如果加上其他因素,如“數(shù)據(jù)頭處理”和“并發(fā)”, 1MS 的“理論”時延增加的影響會成倍增加,將原本處于高性能模式的 I/O 響應(yīng)時間拉高,對應(yīng)用或者數(shù)據(jù)庫來說,“變慢”了。所以存儲雙活的初衷是只是為了高可用性和提高總體并發(fā)、吞吐量,并不是為了降低讀寫響應(yīng)時間。然而,我們在選型存儲雙活方案時,依舊需要考慮如何盡量降低雙活的存儲所帶來的性能降低影響,哪種方案會帶來較小的性能影響。因此,筆者現(xiàn)就目前國內(nèi)主流的五種存儲雙活方案在雙活性能上的特點進行解析。一、華為 HyperMetro1 、讀 I/O :針對數(shù)據(jù)讀場景, 華為 HyperMetro 方
5、案架構(gòu)下, 雙活數(shù)據(jù)中心的業(yè)務(wù)主機只需要讀本數(shù)據(jù)中心對應(yīng)的雙活存儲陣列即可,如下圖所示,這樣可以有效避免主機跨數(shù)據(jù)中心讀取數(shù)據(jù),提升整體讀 I/O 訪問性能。2 、寫 I/O :針對數(shù)據(jù)寫場景,業(yè)務(wù)主機直接寫本數(shù)據(jù)中心對應(yīng)的雙活存儲陣列,避免主機跨數(shù)據(jù)中心轉(zhuǎn)發(fā)數(shù)據(jù)(在轉(zhuǎn)發(fā)寫模式下,區(qū)分主從 LUN ,從 LUN 的寫 I/O 將被控制器轉(zhuǎn)發(fā)到主 LUN 的控制器處理寫 I/O ,并將數(shù)據(jù)回同步至從 LUN ),充分利用 HyperMetro AA 雙活能力,如下圖左所示, AA 集群的每個控制器都能夠接收寫 I/O ,由本地控制器處理本地主機的寫 I/O 請求,減少跨數(shù)據(jù)中心的轉(zhuǎn)發(fā)次數(shù),提升方
6、案整體性能。數(shù)據(jù)寫 I/O 過程如下圖右所示:假如數(shù)據(jù)中心 A 的存儲陣列收到寫 I/O ,寫 I/O 處理流程如下:( 1 )申請寫權(quán)限和記錄寫日志:數(shù)據(jù)中心 A 存儲陣列收到主機寫請求,先申請雙活 Pair 的寫權(quán)限。獲得寫權(quán)限后,雙活 Pair 將該請求記錄寫日志(保證斷點續(xù)傳)。日志中只記錄地址信息,不記錄具體的寫數(shù)據(jù)內(nèi)容。該日志采用具有掉電保護能力的內(nèi)存空間記錄以獲得良好的性能。( 2 )執(zhí)行雙寫:將該請求拷貝兩份分別寫入本地 LUN 和遠端 LUN 的 Cache 。( 3 )雙寫結(jié)果處理:等待兩端 LUN 的寫處理結(jié)果都返回。( 4 )響應(yīng)主機:雙活 Pair 返回主機寫 I/O
7、 操作完成,完成一次寫 I/O 周期。從整個寫 I/O 流程可以看出, HyperMetro 為了保證兩個數(shù)據(jù)中心存儲的數(shù)據(jù)實時一致,寫操作都需要等待兩端存儲寫成功之后再返回主機“寫成功”。雙活 I/O 性能因為實時雙寫導(dǎo)致了一定的時延增加,該寫 I/O 流程相較于本地寫 I/O 而言,額外增加了以下四個時延點。(1) 寫權(quán)限申請時,等待分布式鎖產(chǎn)生的時延;(2) DCL 機制(數(shù)據(jù)變化記錄)產(chǎn)生的時延;( 3 )跨站點將寫 I/O 拷貝至遠端 LUN Cache ;( 4 )遠端 LUN Cache 收到寫 I/O 后,將處理結(jié)果返回至本地。這四個時延點中最主要的還是 3 和 4 中組成的
8、1 倍跨站點往返時延( RTT ),此外,華為 HyperMetro 設(shè)計了一系列 I/O 性能優(yōu)化方案,以減小對寫時延的影響,提升整體雙活的業(yè)務(wù)性能。( 1 )數(shù)據(jù)零拷貝:在雙活鏡像數(shù)據(jù)的初始同步或者恢復(fù)過程中的增量同步過程中,差異數(shù)據(jù)塊通常有大量的零數(shù)據(jù)塊,無需逐塊復(fù)制,該功能叫數(shù)據(jù)零拷貝。例如,虛擬化場景下,新建虛擬機時會產(chǎn)生大量的零數(shù)據(jù)塊,一個數(shù)十 GB 的操作系統(tǒng)盤,實際非零數(shù)據(jù)塊僅 2-3GB 。HyperMetro 零頁面識別技術(shù)的實現(xiàn)方法如下:通過硬件芯片,對數(shù)據(jù)拷貝源端進行快速識別,找出零數(shù)據(jù),在拷貝過程中,對全零數(shù)據(jù)特殊標識,只傳輸一個較小的特殊頁面到對端,不再全量傳輸。相
9、比全量同步,該技術(shù)可有效減少同步數(shù)據(jù)量,減少帶寬消耗,縮短整體 I/O 同步時延。( 2 ) FastWrite 技術(shù):HyperMetro 通過 FastWrite 功能對陣列間數(shù)據(jù)傳輸進行了協(xié)議級優(yōu)化,應(yīng)用 SCSI 協(xié)議的 First Burst Enabled 功能,將寫數(shù)據(jù)的鏈路傳輸交互次數(shù)減少一半。正常的 SCSI 流程中,寫 I/O 在傳輸?shù)碾p端要經(jīng)歷“寫命令”、“寫分配完成”、“寫數(shù)據(jù)”和“寫執(zhí)行狀態(tài)”等多次交互。利用 FastWrite 功能,優(yōu)化寫 I/O 交互過程,將“寫命令”和“寫數(shù)據(jù)”合并為一次發(fā)送,并取消“寫分配完成”交互過程,將跨站點寫 I/O 交互次數(shù)減少一半。
10、該技術(shù)將單次寫 I/O 的 RTT 控制在 1 倍,避免無效交互產(chǎn)生的 RTT 。( 3 )智能的鎖預(yù)取和緩存策略:本地寫 I/O 時,需對主機 I/O 訪問的 LBA 區(qū)間加分布式范圍鎖進行并發(fā)互斥,通過分布式范圍鎖,可以避免頻繁的鎖請求交互,減少跨站點交互交互頻率。當 HyperMetro 的分布式鎖技術(shù)在寫權(quán)限本地無緩存(范圍鎖)的情況下,會通過較小的控制報文,向鎖權(quán)限緩存節(jié)點申請寫權(quán)限,并多預(yù)取部分區(qū)間的寫權(quán)限緩存到本地,如下圖左所示。后續(xù)的連續(xù)寫 I/O 可快速在本地命中寫權(quán)限,不需要再跨站點申請寫權(quán)限,這樣將進一步減少交互頻率,如下圖右所示。二、 EMC VPLEX1 、讀 I/O
11、 :EMC Vplex 具有讀緩存,可以通過寫 I/O 的獨特機制,實現(xiàn)讀 I/O 的加速。Vplex Local/Metro/Geo 架構(gòu)的讀 I/O 流程如下:( 1 )讀 I/O 的時候先讀 Local Cache ,如命中則直接讀取,相較于直接讀后端存儲陣列,內(nèi)存較機械硬盤的讀取性能有著顯著提升,因此,從 Cache 內(nèi)存中直接命中讀 I/O ,將大幅提升讀 I/O 性能;( 2 )如果沒有命中 Local Cache ,將繼續(xù)在 Global Cache 中查找,如果命中,則從對應(yīng)的 Vplex 引擎 Cache 中將其讀取到 Local Cache ,因此,兩引擎的 VplexMe
12、tro/Geo 架構(gòu)存在 1 倍的跨站點往返時延;( 3 )如果在 Global Cache 中沒有命中,則從本地后端的存儲陣列中讀取到 Local Cache 中,并同時修改 Local 和 Global Cache 中的信息與索引信息(表明其他引擎可以從該引擎 Cache 讀取數(shù)據(jù)),本次讀 I/O 加速無效果。( 4 )無論有沒有命中 Cache ,最后都將反饋主機讀 I/O 結(jié)果,本次讀 I/O 周期結(jié)束。從整個讀 I/O 流程可以看出,相較于常見的后端存儲直接讀取,由于讀 Cache 的存在,對讀 I/O 性能的提升是有積極意義的,命中 Local Cache 將提升數(shù)倍讀響應(yīng)時間,
13、沒有命中 Local Cache 幾乎和直接后端存儲讀取性能一致,在實際聯(lián)機型應(yīng)用讀寫比例大致為 7 :3 的情況下,提升讀 I/O 的效果是顯而易見的。2、 寫 I/O :EMC Vplex 同樣也具備“寫緩存”, Vplex Metro 沒有真實的“寫緩存”,實際上是讀緩存,用于加速讀 I/O ,模式采用的是寫直通緩存;Vplex Geo 具有真實的寫緩存,模式采用的是回寫緩存。其中 Vplex Metro 寫 I/O 流程如下圖所示:Vplex Metro/Geo 的寫 I/O 步驟如下:(1) 寫 I/O 時先判斷是否在 Local 、 Global Cache 中有對應(yīng)的舊數(shù)據(jù),如果
14、沒有,則直接寫入本地 Local Cache ;(2) 如果有舊數(shù)據(jù),需先廢除舊數(shù)據(jù)再寫入 Local Cache 。若通過 Global Cache 查詢到 舊數(shù)據(jù)存在于其他站點 Vplex 引擎中,則需要跨數(shù)據(jù)中心查詢和廢除舊數(shù)據(jù),通訊具有 1 倍的跨站點往返時延;(3) 寫入 Local Cache 后, Vplex Metro 和 Geo 的處理方式有所區(qū)別, Vplex Metro 通過寫直通緩存模式將寫 I/O 刷入兩套后端存儲陣列,刷入跨站點的后端存儲將引入 1 倍的跨站點往返時延;而 Vplex Geo 通過回寫緩存模式將寫 I/O 寫入引擎控制器的緩存,并異步鏡像至另一套 V
15、plex 集群的引擎控制器的寫 Cache 中;(4) Vplex Metro 待兩套存儲全部寫反饋完成,最后將反饋主機寫 I/O 周期完成,同時 Global Cache 中的索引做相應(yīng)修改,并在所有引擎上共享該信息,實現(xiàn)分布式緩存一致性;而 Vplex Geo 在鏡像異步寫發(fā)起后,直接反饋主機寫I/O 周期完成,并待兩個引擎的 Cache 達到高水位后刷入后端存儲。從整個寫 I/O 流程可以看出, Vplex Metro 為了加速讀 I/O ,引入了讀 Cache ,為了保證讀 I/O 的數(shù)據(jù)一致性( AccessAnyWhere ),又引入了 Global Cache ,造成寫 I/O
16、必須要查詢本地和其他引擎的 Local Cache 是否有舊數(shù)據(jù),以及時廢棄舊數(shù)據(jù),更新和同步所有引擎的 Global Cache 。這樣的機制原理勢必犧牲了一定的寫 I/O 性能,相較于后端存儲直接寫,引入了兩倍的 RTT 和更新同步 Local 、 Global Cache 過程的時延。其應(yīng)用場景更適合于查詢比例遠高于更新比例的聯(lián)機型應(yīng)用。三、 IBM SVC1、 SVC ESC 方案讀 I/O :針對數(shù)據(jù)讀場景,兩個站點的主機對本站點 SVC節(jié)點和底層存儲節(jié)點的讀 I/O 可以實現(xiàn)就近本地讀能力,如下圖所示,無需跨站點讀其他 SVC 節(jié)點和存儲節(jié)點,避免了跨站點往返時延消耗,性能較單站點
17、存儲節(jié)點直接讀取,性能幾乎一致;當某個站點的存儲出現(xiàn)故障時,該站點的 SVC 節(jié)點將激活和另一個站點的存儲路徑,切換讀取該存儲的數(shù)據(jù)。2 、 SVC ESC 方案寫 I/O :針對數(shù)據(jù)寫場景, SVC ESC 的方案和 SVC Local 方案略有區(qū)別, SVC Local 由一組 I/O Group ,兩個 SVC 節(jié)點組成,對于存儲 LUN 而言,其必然從屬于其中一個 SVC 節(jié)點,稱為優(yōu)先節(jié)點。存儲 LUN 的訪問只能由優(yōu)先節(jié)點提供;而 SVC ESC 同樣是一組 I/O Group ,其兩個 SVC 節(jié)點的角色是一致的,摒棄了優(yōu)先節(jié)點的概念,主機、 SVC 節(jié)點和底層兩個存儲 LUN
18、具備站點屬性, LUN 優(yōu)先從屬于本站點的 SVC 節(jié)點,優(yōu)先被本站點主機訪問。這樣則實現(xiàn)了兩個站點主機并行寫本站點的 SVC 節(jié)點和對應(yīng)的底層存儲節(jié)點,即本地寫的能力。其寫 I/O 流程步驟如下:( 1 )本地 SVC Local Cluster 寫 I/O :a 、主機發(fā)送寫 I/O 請求至 SVC I/O Group , SVC 優(yōu)先節(jié)點反饋主機寫已就緒,隨后主機將寫數(shù)據(jù)發(fā)送至優(yōu)先的 SVC 節(jié)點(圖示步驟 1 );b 、優(yōu)先的 SVC 節(jié)點將 I/O 寫入緩存,并鏡像同步至同一 I/O group 的另一個 SVC 節(jié)點(圖示步驟 2 );c 、該節(jié)點收到寫 I/O ,將其寫入本地緩存
19、,并回反饋至優(yōu)先的 SVC 節(jié)點(圖示步驟 3 );d 、優(yōu)先的 SVC 節(jié)點收到反饋后,向主機回反饋,主機端的寫 I/O 周期結(jié)束(圖示步驟 4 );e 、待優(yōu)先的 SVC 節(jié)點緩存達到一定高水位,將所有寫 I/O 刷入后端存儲 LUN (圖示步驟 5 )。( 2 ) SVC ESC Cluster 寫 I/O :a 、主機發(fā)送寫請求至本地 SVC 節(jié)點, SVC 節(jié)點反饋主機寫已就緒,隨后主機發(fā)送寫數(shù)據(jù)至本地 SVC 節(jié)點(圖示步驟 1 、 2 、 3 );b 、本地 SVC 節(jié)點將 I/O 寫入緩存,并將寫緩存數(shù)據(jù)鏡像到遠端 SVC 節(jié)點(圖示步驟 4 );c 、遠端 SVC 節(jié)點反饋本
20、地 SVC 節(jié)點寫完成標識(圖示步驟 5 ) ;d 、本地 SVC 接收到遠端反饋后,反饋寫完成標識給本地主機(圖示步驟 6 ) ;e 、待本地和遠端 SVC 節(jié)點寫緩存達到高水位,開始刷數(shù)據(jù)至后端存儲,首先發(fā)送寫請求給后端存儲,后端存儲反饋 SVC 節(jié)點寫已就緒, SVC 開始發(fā)送寫數(shù)據(jù)(圖示步驟 7 、 8 、 9 );f 、待寫數(shù)據(jù)全部刷入,后端存儲分別反饋寫完成標識給本地和遠端 SVC 節(jié)點(圖示步驟 10 );從整個 SVC ESC 方案的寫 I/O 流程可以看出,步驟 1 至 6 對主機寫 I/O 時延有影響,但寫 I/O 僅傳送一次數(shù)據(jù)到遠端,相比本地直接寫 I/O ,增加了 1
21、 倍的跨站點往返時延。另外,步驟 7 至 10 是異步操作,對主機時延無影響。3 、 SVC HyperSwap 方案讀 I/O :假設(shè)初始化后, Site1 的卷為 Master 卷,Site2 的卷為 Aux 卷,這種情況下 Site1 和 Site2 卷的讀 I/O 流程是不一樣的,如下圖所示,其流程步驟如下:( 1 ) Site1 主機讀 I/O (本地 =Site1, 遠端 =Site2 ):a 、 Site1 主機向本地 SVC I/O Group1 的任意一個 SVC 節(jié)點發(fā)送讀請求;b 、本地 SVC I/O Group1 將讀請求透傳至本地 Storage Pool1 ;c
22、、本地 Storage Pool1 反饋讀請求,并將讀數(shù)據(jù)傳至本地 SVC I/O Group1 ;d 、本地 SVC I/O Group1 將數(shù)據(jù)結(jié)果反饋至 Site1 主機;( 2 ) Site2 主機讀 I/O (本地 =Site2, 遠端 =Site1 ):a 、 Site2 主機向本地 SVC I/O Group2 的任意一個 SVC 節(jié)點發(fā)送讀請求;b 、本地 SVC I/O Group2 將讀請求轉(zhuǎn)發(fā)至遠端 SVC I/O Group1 ;c 、遠端 SVC I/O Group1 將讀請求透傳至遠端 Storage Pool1 ;d 、遠端 Storage Pool1 反饋讀請求
23、,并將讀數(shù)據(jù)傳至遠端 SVC I/O Group1 ;e 、遠端 SVC I/O Group1 將數(shù)據(jù)結(jié)果反饋至本地 SVC I/O Group2 ;f 、本地 SVC I/O Group2 將數(shù)據(jù)結(jié)果反饋至 Site2 主機。從整個 SVC HyperSwap 方案的讀 I/O 流程來看, Site1 主機是本地讀,直接透穿 SVC I/O Group 讀本地底層存儲,讀性能幾乎和主機直接讀后端存儲一致;Site2 主機的讀 I/O 需要通過本地 SVC I/O Group 跨站點轉(zhuǎn)發(fā)至 Site1 的 SVC I/O Group ,再讀遠端的后端存儲,因此額外增加了 1 倍的跨站點往返時延
24、。4 、 SVC HyperSwap 方案寫 I/O :假設(shè)初始化后, Site1 的卷為 Master 卷,Site2 的卷為 Aux 卷,這種情況下 Site1 和 Site2 卷的寫 I/O 流程也是不一樣的,如下圖所示,其流程步驟如下:( 1 ) Site1 主機寫 I/O (本地 =Site1, 遠端 =Site2 ):a 、 Site1 主機向本地 SVC I/O Group 節(jié)點發(fā)送寫 I/O 請求和數(shù)據(jù);b 、本地 SVC 節(jié)點將寫 I/O 寫入本地寫緩存;c 、本地 SVC 節(jié)點將寫 I/O 同步至同 I/O Group 的另一 SVC 節(jié)點緩存,并通過 SVC Metro
25、Mirror 發(fā)送寫 I/O 至遠端 SVC I/O Group 節(jié)點;d 、本地和遠端所有 SVC 節(jié)點陸續(xù)反饋寫 I/O 同步已完成;e 、本地 SVC 節(jié)點反饋 Site1 主機寫完成;f 、待本地和遠端 SVC 節(jié)點寫緩存達到高水位,分別將寫緩存數(shù)據(jù)刷入各自站點的后端存儲中。( 2 ) Site2 主機寫 I/O (本地 =Site2, 遠端 =Site1 ):a 、 Site2 主機向本地 SVC I/O Group 節(jié)點發(fā)送寫 I/O 請求和數(shù)據(jù);b 、本地 SVC 節(jié)點將寫 I/O 轉(zhuǎn)發(fā)至遠端 SVC I/O Group 節(jié)點;c 、遠端 SVC 節(jié)點將寫 I/O 寫入寫緩存中;
26、d 、遠端 SVC 節(jié)點將寫 I/O 同步至同 I/O Group 的另一 SVC 節(jié)點緩存,并通過 SVC Metro Mirror 發(fā)送寫 I/O 至本地 SVC I/O Group 節(jié)點;e 、本地和遠端所有 SVC 節(jié)點陸續(xù)反饋寫 I/O 同步已完成;f 、遠端 SVC 節(jié)點反饋本地 SVC 節(jié)點的轉(zhuǎn)發(fā)響應(yīng);g 、本地 SVC 節(jié)點反饋 Site2 主機寫完成;h 、待本地和遠端 SVC 節(jié)點寫緩存達到高水位,分別將寫緩存數(shù)據(jù)刷入各自站點的后端存儲中。從整個 SVC HyperSwap 方案的寫 I/O 流程來看, Site1 主機是本地寫,直接寫 SVC 節(jié)點緩存,并同步至兩個站點所
27、有 SVC 節(jié)點。相比直接存儲寫 I/O ,增加了一倍的跨站點往返時延;Site2 主機的寫 I/O 需要通過本地 SVC I/O Group 跨站點轉(zhuǎn)發(fā)至 Site1 的 SVC I/O Group ,該步驟增加了一倍的跨站點往返時延。寫到 Site1 的數(shù)據(jù)必須同步回 Site2 ,來保證兩個站點數(shù)據(jù)一致性,這個步驟又額外增加了一倍的跨站點往返時延,因此,相比直接存儲寫 I/O ,總共額外增加了 2 倍的跨站點往返時延。四、 HDS GADHDS GAD 的讀寫 I/O 流程受 GAD 卷的狀態(tài)所影響, GAD 卷由 PVOL 和 SVOL 成對組成,其狀態(tài)分為已鏡像、正在鏡像、暫停、阻塞
28、。在不同狀態(tài)下,兩個站點的主機對 PVOL 和 SVOL 的讀寫 I/O 步驟和性能是不一樣的。1 、主機寫 I/O ( GAD 狀態(tài)為:Mirrored ):當 GAD 卷的狀態(tài)為已鏡像時, PVOL 卷和 SVOL 卷的 I/O 模式為鏡像。主端和從端都可以進行寫操作,正常情況下,任意端存儲接收到寫 I/O 請求后,都執(zhí)行雙寫,待兩端存儲全部寫入成功后,再回復(fù)主機寫成功,完成寫 I/O 周期。如下圖所示,其詳細寫 I/O 步驟如下:(1) 主機可通過 HDLM 多路徑軟件來配置優(yōu)選路徑為本地的存儲卷,首先發(fā)起寫 I/O 請求,對 GAD 卷的寫數(shù)據(jù)將寫入本地存儲卷;(2) 本地存儲卷將接收
29、到的寫 I/O 同步鏡像至遠端存儲卷;(3) 遠端存儲卷收到寫 I/O 后,完成寫 I/O ,并反饋結(jié)果至本地存儲卷;(4) 兩端存儲卷全部雙寫完成后,由本地存儲卷反饋主機寫完成。其中,步驟 2 、 3 將引入 1 倍的跨站點往返時延。2 、主機讀 I/O ( GAD 狀態(tài)為:Mirrored ):針對讀 I/O 場景,兩個站點主機可分別讀取本站點的主存儲和輔助存儲系統(tǒng)的數(shù)據(jù),主機服務(wù)器通過優(yōu)選路徑讀取本地存儲卷,然后發(fā)送到服務(wù)器。該場景下,主存儲系統(tǒng)和從存儲系統(tǒng)之間沒有任何通信發(fā)生。3 、主機寫 I/O ( GAD 狀態(tài)為:Mirroring ):當 GAD 卷狀態(tài)為正在鏡像同步時, PVO
30、L 的 I/O 模式為鏡像, SVOL 的 I/O 模式為阻塞。寫請求被寫入兩個對卷,然后寫完成的反饋返回到服務(wù)器。因為 SVOL 的 I/O 模式是阻塞的,所以它不接受來自服務(wù)器的任何 I/O ,但是寫入 PVOL 的數(shù)據(jù)也會由主存儲系統(tǒng)同步寫入 SVOL ,待 SVOL 寫入完成反饋后,才反饋服務(wù)器寫周期完成,因此本地主機的寫 I/O 引入了 1 倍的跨站點往返時延,如下圖所示。而遠端主機在 SVOL 阻塞時,需要通過多路徑跨站點訪問 PVOL ,額外又引入了 1 倍的跨站點往返時延。4 、主機讀 I/O ( GAD 狀態(tài)為:Mirroring ):正在鏡像的主從存儲系統(tǒng),從 SVOL 無
31、法提供訪問 I/O 服務(wù),讀取請求全部由 PVOL 提供,然后將讀取結(jié)果反饋到主機。該場景下,主存儲系統(tǒng)和從存儲系統(tǒng)之間也沒有任何通信發(fā)生。遠端主機需要跨站點訪問 PVOL ,引入 1 倍的跨站點往返時延。5 、主機寫 I/O ( GAD 狀態(tài)為:Suspended ):當 GAD 卷的狀態(tài)為暫停時,并且 PVOL 上有最新的數(shù)據(jù)時, PVOL 的 I/O 模式為本地, SVOL 的模式為阻塞;當 SVOL 上有最新的數(shù)據(jù)時, PVOL 的 I/O 模式為阻塞, SVOL 的模式為本地。當 PVOL 上有最新的數(shù)據(jù)時,寫入請求被寫入 PVOL ,然后寫入完成后反饋返回到主機,如下圖所示。此時,
32、 SVOL 的 I/O 模式是阻塞的,因此它不接受來自服務(wù)器的 I/O ,而 PVOL 的 I/O 模式是又本地的,因此寫入 PVOL 的數(shù)據(jù)也不會同步寫入到 SVOL 。該狀態(tài)下,本地主機是本地寫,遠端主機需要跨站點寫,引入了 1 倍的跨站點往返時延, PVOL 和 SVOL 間的數(shù)據(jù)差異也將累積變大。6 、主機讀 I/O ( GAD 狀態(tài)為:Suspended ):當 GAD 卷的狀態(tài)為暫停時,從 SVOL 無法提供訪問 I/O 服務(wù),讀取請求全部由 PVOL 提供,然后將讀取結(jié)果反饋到主機。該場景下,主存儲系統(tǒng)和從存儲系統(tǒng)之間沒有任何通信發(fā)生。遠端主機需要跨站點訪問 PVOL ,引入 1
33、 倍的跨站點往返時延。7 、主機讀寫 I/O ( GAD 狀態(tài)為:Blocked ):當 GAD 狀態(tài)為阻塞時, PVOL 和 SVOL 的 I/O 模式全部為阻塞。兩個卷都不接受讀 / 寫處理,主機存儲 I/O 中斷。8 、 HNAS+GAD 寫 I/O :如下圖所示, HAS 的兩個節(jié)點 Node1 與 Node2 組成一個 HAS 集群, HNAS 需結(jié)合 GAD 雙活實現(xiàn)文件系統(tǒng)雙活,且 HNAS 節(jié)點只有一個主節(jié)點提供文件系統(tǒng)讀寫,其寫 I/O 步驟如下:( 1 )本地 HNAS 客戶端將 I/O 寫入到本地 HNAS 節(jié)點的 NVRAM 中;( 2 )本地 HNAS 節(jié)點將 NVR
34、AM 中的寫 I/O 鏡像到遠端 HNAS 節(jié)點的 NVRAM 中;( 3 )遠端 HNAS 節(jié)點反饋本地 HNAS 同步完成;( 4 )本地 HNAS 反饋本地客戶端寫 I/O 完成,完成本次寫 I/O 周期;( 5 ) 1-6 秒內(nèi),本地 HNAS 節(jié)點將 NVRAM 里的數(shù)據(jù)刷到本地后端 GAD 存儲, HNAS 節(jié)點通過多路徑優(yōu)先選擇 PVOL 下盤,實現(xiàn)本地直接下盤操作;( 6 )本地存儲通過 True Copy 同步將數(shù)據(jù)鏡像到 SVOL ;從整個 HNAS+GAD 寫 I/O 流程來看,本地站點的 HNAS 客戶端能夠讀寫本地 HNAS 和底層 GAD 雙活存儲,且寫 I/O 會
35、引入 2 倍的跨站點往返時延, 1 倍為兩個 HNAS 節(jié)點 NVRAM 鏡像所引入, 1 倍為 PVOL 和 SVOL 的雙寫 I/O 所引入。而遠端站點的 HNAS 客戶端則需要跨站點訪問 HNAS 節(jié)點,并下盤到 PVOL 所在存儲,因此將引入 3 倍的跨站點往返時延。五、 NetApp MetroCluster1 、讀 I/O :針對數(shù)據(jù)讀場景, NetApp MetroCluster 架構(gòu)下,站點 A 的主機會優(yōu)先從本地 Plex0 ( A_LOCAL )中讀數(shù)據(jù),遠端的 Plex1 ( A_REMOTE )的讀權(quán)限需要命令打開(切換場景),默認情況下,遠端 Plex1 ( A_RE
36、MOTE )不提供讀業(yè)務(wù);站點 B 的主機會優(yōu)先從本地 Plex0 ( B_LOCAL )中讀數(shù)據(jù),遠端 Plex1 ( B_REMOTE )默認時不提供讀業(yè)務(wù)。如下圖所示:1、 寫 I/O :針對數(shù)據(jù)寫場景, MetroCluster 使用 SyncMirror ,它可以對集群的兩端進行同步寫入。作為寫入過程的一部分, NVRAM 還在集群互連上進行鏡像,以確保不會丟失數(shù)據(jù),并且所有寫入都將提交到磁盤,以確保在中斷期間不會丟失數(shù)據(jù)。由于該機制, MetroCluster 提供真正的同步寫入。這兩次寫入均由一個控制器執(zhí)行,它不會將寫入傳遞給遠程節(jié)點以在該站點執(zhí)行寫入。因此,可以理解為 NetApp MetroCluster 分以下兩個同步動作分別實現(xiàn)兩個站點控制器和后端存儲陣列的寫數(shù)據(jù)一致性:( 1 )第一個同步動作是所有控制器的 NVRAM 數(shù)據(jù)同步。每個控制器的 NVRAM 都分成 4 個區(qū)域,當新請求寫操作時,先寫到本地
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- T-ZNZ 264.2-2024 重金屬中度污染農(nóng)田土壤修復(fù)和安全利用技術(shù)規(guī)范 第2部分:超積累東南景天與中稻輪作
- T-ZZB 3744-2024 制革用陰離子型磺化油
- T-ZMDS 20008-2024 醫(yī)療器械嵌入式軟件漏洞評估方法
- 2025年度解除農(nóng)業(yè)合作項目的聲明書
- 二零二五年度綠化苗木購銷與城市綠化養(yǎng)護服務(wù)合同
- 二零二五年度實習(xí)教師與教育機構(gòu)教育咨詢服務(wù)合同
- 二零二五年度共享住宅租賃正規(guī)協(xié)議書范本及環(huán)保要求
- 二零二五年度勞動合同主體變更及培訓(xùn)交接服務(wù)合同
- 2025年度水產(chǎn)養(yǎng)殖水質(zhì)改良與養(yǎng)魚合同
- 二零二五年度人社部員工勞動合同勞動合同電子簽名與認證合同
- 4.城軌工程項目勞務(wù)分包指導(dǎo)價(車站.盾構(gòu).鋪軌)4
- 2024年安全生產(chǎn)網(wǎng)絡(luò)知識競賽題庫及答案(共五套)
- 普通工安全技術(shù)操作規(guī)程交底注意事項(8篇)
- 2025屆江蘇省十三大市高三沖刺模擬歷史試卷含解析
- DataOps 實踐指南 2.0白皮書
- 供電所班組建設(shè)方案
- 委托處置不良資產(chǎn)協(xié)議(三篇)
- 中鐵建新員工培訓(xùn)
- 2024年02月國家鐵路局事業(yè)單位招考聘用27人筆試歷年(2016-2023年)真題薈萃帶答案解析
- 機加工安全教育培訓(xùn)
- 星巴克運營管理手冊
評論
0/150
提交評論