數(shù)據(jù)容災(zāi)架構(gòu)中的數(shù)據(jù)復(fù)制技術(shù)_第1頁
數(shù)據(jù)容災(zāi)架構(gòu)中的數(shù)據(jù)復(fù)制技術(shù)_第2頁
數(shù)據(jù)容災(zāi)架構(gòu)中的數(shù)據(jù)復(fù)制技術(shù)_第3頁
數(shù)據(jù)容災(zāi)架構(gòu)中的數(shù)據(jù)復(fù)制技術(shù)_第4頁
數(shù)據(jù)容災(zāi)架構(gòu)中的數(shù)據(jù)復(fù)制技術(shù)_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、數(shù)據(jù)容災(zāi)架構(gòu)中的數(shù)據(jù)復(fù)制技術(shù)隨著全球IT產(chǎn)業(yè)的飛速發(fā)展,金融行業(yè)的IT建設(shè)逐步成為主導(dǎo)金融企業(yè)業(yè)務(wù)發(fā)展的核心驅(qū) 動力,基于金融行業(yè)IT系統(tǒng)容災(zāi)建設(shè)的各種行業(yè)標(biāo)準(zhǔn)以及監(jiān)管標(biāo)準(zhǔn)也相應(yīng)提高。而決定容 災(zāi)架構(gòu)健壯與否的最關(guān)鍵因素就是數(shù)據(jù)復(fù)制技術(shù),它是實現(xiàn)高標(biāo)準(zhǔn)RTO和RPO的前提條 件。本文基于業(yè)界主流數(shù)據(jù)復(fù)制技術(shù)的原理、復(fù)雜度、關(guān)鍵因素以及復(fù)制效果等多個維度進 行分析及論述,旨在為同業(yè)在此類項目規(guī)劃和建設(shè)過程中提供一些啟示和幫助。.背景及綜述在金融行業(yè)內(nèi),眾所周知其對業(yè)務(wù)連續(xù)性的要求以及對各種IT風(fēng)險的應(yīng)對能力的要 求都是非常高,尤其是對容災(zāi)能力的要求,這是由它的業(yè)務(wù)特殊性以及集中式架構(gòu) 所決定的。

2、在金融企業(yè)容災(zāi)架構(gòu)中,所謂的數(shù)據(jù)復(fù)制技術(shù)主要是指能夠?qū)⒔Y(jié)構(gòu)化數(shù)據(jù)進行復(fù)制, 從而保證數(shù)據(jù)具備雙副本或者多副本的技術(shù)。目前業(yè)界發(fā)展來看,可以實現(xiàn)數(shù)據(jù)復(fù)制的技術(shù)多種多樣,有基于數(shù)據(jù)庫層面的數(shù)據(jù) 復(fù)制技術(shù),例如Oracle公司的Active Data Gurad、IBM公司的db2 HADR等;有 基于系統(tǒng)層面的數(shù)據(jù)復(fù)制技術(shù),例如賽門鐵克的vxvm、傳統(tǒng)的邏輯卷管理(LVM)、 Oracle公司的自動存儲管理(ASM)冗余技術(shù)、舊M公司的GPFS等;有基于存儲 虛擬化實現(xiàn)的數(shù)據(jù)復(fù)制技術(shù),例如EMC公司Vplex Stretch Cluster、IBM公司SVC Split Cluster、NetAP

3、P公司Metro Cluster等;也有基于存儲底層實現(xiàn)的數(shù)據(jù)復(fù)制 技術(shù),例如IBM公司的DS8000 PPRC技術(shù)、EMC公司的SRDF技術(shù)、HP公司 的CA技術(shù)等等。每一種技術(shù)都有其實現(xiàn)的前提條件,也有各自的技術(shù)特點和實現(xiàn)的不同效果。本文 將從復(fù)制技術(shù)的原理、特點、復(fù)雜程度以及復(fù)制效果等多方面展開分析及論述,并 從多個維度進行對比分析,將業(yè)界主流數(shù)據(jù)復(fù)制技術(shù)的發(fā)展現(xiàn)狀以及技術(shù)優(yōu)劣給予 一個清晰的展示,并就數(shù)據(jù)復(fù)制技術(shù)發(fā)展的未來以及趨勢予以展望。.數(shù)據(jù)復(fù)制技術(shù)價值分析數(shù)據(jù)復(fù)制在容災(zāi)中的必要性一、RPO保障如果沒有數(shù)據(jù)復(fù)制技術(shù),那么容災(zāi)也就無從談起。當(dāng)面臨站點及故障時,由于沒有 數(shù)據(jù)復(fù)制技術(shù)的

4、支撐,我們的數(shù)據(jù)無法在其他站點再現(xiàn),這將意味著RPO將無法 保障。對于一個金融企業(yè)來講,最重要的就是客戶的數(shù)據(jù),它是企業(yè)的生命。從這 個意義上來講,金融企業(yè)不能沒有容災(zāi)體系,容災(zāi)體系的前提條件是能夠?qū)崿F(xiàn)數(shù)據(jù) 復(fù)制。那么數(shù)據(jù)復(fù)制的效率如何,復(fù)制的效果如何,復(fù)制技術(shù)的先進與否也就決定 了金融企業(yè)生命線的穩(wěn)固與否。二、RTO保障所謂RTO就是在容災(zāi)系統(tǒng)在面臨站點級故障時,多長時間能夠恢復(fù)業(yè)務(wù)。假設(shè)站點 故障恢復(fù)的時間不可容忍或者根本沒有可能,那么業(yè)務(wù)必須能夠切到另外一個數(shù)據(jù) 中心,從數(shù)據(jù)、應(yīng)用以及網(wǎng)絡(luò)層都需要具備這個切換能力。但是最終的目的就是要 保障業(yè)務(wù)能正常恢復(fù),而業(yè)務(wù)恢復(fù)的前提條件就是數(shù)據(jù),沒

5、有數(shù)據(jù)的應(yīng)用切換和網(wǎng) 絡(luò)切換沒有任何意義。也就是說數(shù)據(jù)恢復(fù)是應(yīng)用切換以及網(wǎng)絡(luò)切換的前提條件,從 這個意義上講,數(shù)據(jù)復(fù)制效率和效果直接決定了一些列切換,也就是它使得RTO成 為可能。評價數(shù)據(jù)復(fù)制技術(shù)的維度分析對于數(shù)據(jù)復(fù)制來講,我們可以從多個層面、多種技術(shù)去實現(xiàn)。各有各的特點,那么 究竟哪一種數(shù)據(jù)復(fù)制技術(shù)更適合我們?活著說哪一種復(fù)制技術(shù)更科學(xué)合理?這需要 一系列從不同緯度進行的科學(xué)評估。本文認為應(yīng)該從以下幾個方面來展開分析,并 結(jié)合我們自己的需求來選擇合理的數(shù)據(jù)復(fù)制方案。一、投資成本分析建設(shè)任何一個項目,投資成本的分析都是必不可少的分析維度。對數(shù)據(jù)復(fù)制技術(shù)的 投資成本分析來講,我們需要從它的首次建

6、設(shè)成本、持續(xù)維護成本以及容災(zāi)管理成 本等多方面去考慮。二、技術(shù)成熟度及健壯性分析對于數(shù)據(jù)復(fù)制技術(shù)的成熟度和健壯性分析來講,一方面我們要從技術(shù)本身的原理上 來分析,另外我們還需要從技術(shù)的發(fā)展以及應(yīng)用范圍以及應(yīng)用的持久穩(wěn)定性等方面 來考慮。三、風(fēng)險評估分析數(shù)據(jù)復(fù)制技術(shù)本身來講是要幫助我們解決站點級故障帶給我們的IT風(fēng)險,但是對于 技術(shù)應(yīng)用本身來講,它也會存在一些技術(shù)風(fēng)險。比如說特殊場合下的一些技術(shù)風(fēng)險、 容災(zāi)管理過程中的一些風(fēng)險、極端場合下的一些技術(shù)風(fēng)險等等。四、功能拓展性分析對于數(shù)據(jù)復(fù)制技術(shù)本身來講,其主要功能就是完成數(shù)據(jù)的復(fù)制。但是在完成數(shù)據(jù)復(fù) 制的同時,由于其架構(gòu)的特點以及技術(shù)特點等因素有可

7、能對于我們的應(yīng)用產(chǎn)生積極 的拓展性作用,也有可能限制了我們的應(yīng)用架構(gòu)模式,還有可能對我們的基礎(chǔ)架構(gòu) 擴展性以及靈活性造成一定的限制。.數(shù)據(jù)復(fù)制技術(shù)原理分析基于應(yīng)用事務(wù)日志回放技術(shù)圖3.1是Oracle數(shù)據(jù)庫層面的數(shù)據(jù)復(fù)制技術(shù)(ADG)的架構(gòu)原理圖。對于該架構(gòu)原理圖,本文從其實現(xiàn)的基本條件、數(shù)據(jù)復(fù)制原理、數(shù)據(jù)復(fù)制的模式以 及數(shù)據(jù)復(fù)制的關(guān)鍵因素等幾個方面來進行深度剖析。圖 3.1-1 Oracle Active Data Guard前提條件容災(zāi)站點之間需要有三層以太網(wǎng)連通,軟件層面需要數(shù)據(jù)庫的集群軟件模塊(Oracle Active Data Gurard)或者是db2 purscalehadr。

8、服務(wù)器層面需要至少兩套服務(wù)器系 統(tǒng)分別部署于兩個數(shù)據(jù)中心。存儲層面需要兩套存儲空間分別部署于兩個站點作為 主庫存儲和備庫存儲,他們互相之間獨立。復(fù)制原理對于主站點的數(shù)據(jù)庫來講,客戶端的數(shù)據(jù)更新請求首先要由日志寫入進程寫到重做 日志當(dāng)中,然后由數(shù)據(jù)寫進程再周期性地寫入數(shù)據(jù)文件當(dāng)中。重做日志當(dāng)中以SCN 為數(shù)據(jù)庫獨有的時間搓序列來記錄所有數(shù)據(jù)庫更新的先后順序,從而保障數(shù)據(jù)庫恢 復(fù)能夠按照正確的順序執(zhí)行保障數(shù)據(jù)一致性和完整性。那么對于配置了 Active Data Guard的數(shù)據(jù)庫讀寫的完成在以上所述過程中,日志寫進程在本地日志文件寫入過 程的同時,日志傳輸進程會將緩存里面的重做日志通過ADG傳輸

9、給災(zāi)備站點的備 庫實例,備庫實例的日志接收進程根據(jù)接受到的重做日志在備庫上重新執(zhí)行數(shù)據(jù)庫 的更新操作,從而保證主庫和備庫的事務(wù)性更新行為一致性,最終保證數(shù)據(jù)的一致。 當(dāng)然也有一個前提條件,那就是在ADG作用之前,必須保證備庫的數(shù)據(jù)保持與主 庫的某一固定時間點的完整副本,這需要靠傳統(tǒng)數(shù)據(jù)備份技術(shù)來實現(xiàn)備庫的初始數(shù) 據(jù)復(fù)制。因為事務(wù)復(fù)制的本質(zhì)是行為復(fù)制,那么行為作用的初始數(shù)據(jù)副本必須保持 一致,才能保證最終兩副本的一致性。對于事務(wù)日志的復(fù)制技術(shù),本文根據(jù)主庫IO周期特點可以分為絕對同步模式、近似 同步模式和異步模式三種。絕對同步模式是指主庫的一個完整更新事務(wù)的結(jié)束既要 包括主庫的重做日志落盤也要包

10、括備庫的重做日志落盤,也就是說備庫重做日志落 盤之后返回給主庫,主庫才能執(zhí)行下一個事務(wù)。近似同步模式是指在傳輸正常情況 下保持與絕對同步模式一樣的模式,在網(wǎng)絡(luò)傳輸超時的情況下,就會剝離備庫重做 日志的過程,只要保證主庫重做日志落盤就可以了。異步模式是指主庫只保證本地 重做日志落盤,并不會等待備庫重做日志落盤的返回信號。在后兩種模式下,當(dāng)主 備庫傳輸管理剝離之后,主庫會主動通過以下兩種方式探測并嘗試重新和備庫建立 聯(lián)系,第一是歸檔日志進程會周期性ping備庫,成功情況下,它會根據(jù)獲得的備庫 控制文件的記錄的最后歸檔點和自己的歸檔日志決定向備庫推送哪些歸檔日志。第 二是日志發(fā)送進程會在重做日志準(zhǔn)備

11、發(fā)生歸檔的時刻點主動去ping備庫日志接受 進程并把剩余的重做條目發(fā)送給備庫接受進程。關(guān)鍵因素基于事務(wù)日志回放技術(shù)的數(shù)據(jù)復(fù)制架構(gòu),從技術(shù)規(guī)劃上以及運維管理層面上有幾個 關(guān)鍵因素需要把握才能將這種數(shù)據(jù)復(fù)制技術(shù)運用自如,才能幫我們真正實現(xiàn)高標(biāo)準(zhǔn) 的容災(zāi)體系建設(shè)。一、重做日志管理策略設(shè)計我們知道對于數(shù)據(jù)庫來講,我們是靠其在線重做日志和離線重做日志來進行數(shù)據(jù)恢 復(fù)的。對于離線重做日志也就是歸檔日志,我們是需要周期性備份并刪除的,否則 離線重做日志就會無限占用數(shù)據(jù)庫有限的存儲資源。那么對于事務(wù)日志型數(shù)據(jù)復(fù)制 架構(gòu)來講,無論是主庫還是備庫,都需要有合理的日志管理策略來配合才能正常運 行。策略的規(guī)劃和設(shè)計需

12、要把握以下幾個原則:.完成應(yīng)用的日志要及時轉(zhuǎn)儲,包括主庫傳輸完畢的歸檔日志和備庫應(yīng)用完畢的歸 檔日志。.沒有完成應(yīng)用的日志必須能夠保留,主庫沒有傳輸?shù)絺鋷斓臍w檔日志如果被提前 轉(zhuǎn)儲會造成備庫數(shù)據(jù)丟失,備庫沒有被應(yīng)用的日志如果轉(zhuǎn)儲,備庫同樣會丟失數(shù)據(jù)。.存儲資源的科學(xué)規(guī)劃,如果主備庫暫時中斷,又因為原則2導(dǎo)致歸檔日志堆積, 那么勢必造成存儲資源的需求超過正常時刻的存儲需求量,如果存儲資源不夠,又 會造成數(shù)據(jù)庫發(fā)生宕機事故。以上各個原則的科學(xué)設(shè)計既需要依賴于數(shù)據(jù)庫參數(shù)的合理設(shè)置,又需要依賴于備份 工具的轉(zhuǎn)儲策略合理配合,同時更需要根據(jù)不同的業(yè)務(wù)系統(tǒng)以及負載特點,通過歷 史數(shù)據(jù)評估以及仿真測試數(shù)據(jù)來

13、設(shè)計合理的數(shù)值并進行動態(tài)評估和優(yōu)化。二、架構(gòu)擴展性及靈活性在今天的互聯(lián)網(wǎng)線上時代,系統(tǒng)架構(gòu)的擴展性和靈活性顯得尤為重要。對于容災(zāi)架 構(gòu)來講,它的擴展性和靈活性同樣非常重要。對于業(yè)務(wù)型的數(shù)據(jù)復(fù)制架構(gòu)來講,它 有兩種基本架構(gòu):級聯(lián)架構(gòu)和串聯(lián)架構(gòu)。級聯(lián)架構(gòu)是指一點為主多點為備,串聯(lián)架 構(gòu)是指主備模式依次類推。級聯(lián)架構(gòu)更有利于主庫的多點保障,串聯(lián)架構(gòu)更有利于 主庫的性能保障。具體采用什么樣的架構(gòu)組合,是要根據(jù)主庫數(shù)據(jù)的具體業(yè)務(wù)需求 進行合理評估和設(shè)計。三、容災(zāi)切換管理主備庫的切換,包括兩種類型的切換:Fail Over & Switch Over。Fail Over是指故障情況下的強制切換,Switc

14、h Over是指計劃性的切換。無論是哪 種切換首先是要保障備庫數(shù)據(jù)和主庫數(shù)據(jù)一致或者可容忍范圍內(nèi)的近似一致。其次 當(dāng)數(shù)據(jù)發(fā)生切換時,實際上主庫的服務(wù)IP地址就會轉(zhuǎn)化成備庫的服務(wù)地址,無論是 通過域名轉(zhuǎn)換還是通過應(yīng)用重連的方式都需要保障上層的服務(wù)地址能夠無縫切換。 最后切換之后,原來的主庫如果沒有時間戳恢復(fù)功能的話,那么原主庫里面的數(shù)據(jù) 就會變成無效數(shù)據(jù),需要重新初始化數(shù)據(jù)副本。但是如果保持時間戳恢復(fù)功能的化, 就會巨大的存儲空間消耗。基于系統(tǒng)級邏輯卷鏡像技術(shù)下面三張圖都是基于系統(tǒng)級邏輯卷鏡像技術(shù)實現(xiàn)的數(shù)據(jù)雙重復(fù)制。圖3.2-1是基于 ORACLE自動存儲卷管理技術(shù)實現(xiàn)的ASM磁盤卷鏡像復(fù)制技術(shù)

15、;圖3.2-2是基于 UNIX存儲卷管理(LVM)實現(xiàn)的邏輯卷鏡像技術(shù);圖3.2-3是基于舊M GPFS分 布式文件系統(tǒng)底層邏輯磁盤鏡像實現(xiàn)的數(shù)據(jù)復(fù)制。三種技術(shù)雖然依賴的具體技術(shù)不 同,但是其底層原理都是基于系統(tǒng)層面的雙寫實現(xiàn)的數(shù)據(jù)復(fù)制。圖3.2-1 ORACLE ASM復(fù)制鏡像架構(gòu)圖3.2-3分布式文件系統(tǒng)GPFS鏡像復(fù)制架構(gòu)前提條件容災(zāi)站點之間需要SAN環(huán)境聯(lián)通。軟件層面,架構(gòu)一需要具備ORACLE集群軟件 當(dāng)中的自動存儲卷管理模塊,架構(gòu)二需要借助UNIX操作系統(tǒng)層的邏輯卷管理器, 架構(gòu)三需要借助GPFS或者類似的分布式文件系統(tǒng)軟件。存儲層面需要兩套存儲空 間分別部署于兩個站點作為主庫存儲

16、和備庫存儲,他們互相之間獨立。復(fù)制原理對于ASM和LVM模式來講,都是將底層來自不同站點的兩個物理存儲卷作為鏡像 對組合成一個可用的邏輯存儲卷提供給上層應(yīng)用來存放數(shù)據(jù),本地物理卷和遠程物 理卷分別是由存儲經(jīng)過本地SAN環(huán)境以及跨數(shù)據(jù)中心SAN環(huán)境提供給服務(wù)器操作 系統(tǒng)層。LVM是對操作系統(tǒng)的PP寫入進行實時雙向復(fù)制,而ASM是對Oracle數(shù) 據(jù)文件AU寫入進行實時雙向復(fù)制。本地寫完并且遠端寫完才能算是一個完整的寫 入,假設(shè)遠端存儲卷寫入超時就會被標(biāo)為故障或者是離線狀態(tài),當(dāng)遠端存儲寫入恢 復(fù)之后,對于LVM來講需要重新進行手動同步實現(xiàn)鏡像副本完全一致。而對于ASM 來講,會有一個短時間內(nèi)的日志

17、記錄會幫助恢復(fù)離線鏡像恢復(fù)數(shù)據(jù),但是如果超過 這個時間,同樣需要一個全新的同步來保證數(shù)據(jù)的一致性。二者的區(qū)別在于LVM的 邏輯卷與物理卷的映射關(guān)系在創(chuàng)建邏輯卷的時候就已經(jīng)定義好了,所以對于壞塊兒 問題,LVM無法完成塊兒指針的動態(tài)轉(zhuǎn)移。而ASM是在數(shù)據(jù)寫入時才會分配具體 的AU,完全可以做到通過指針轉(zhuǎn)移的方式避免壞塊兒導(dǎo)致的數(shù)據(jù)寫入失敗問題。對于GPFS模式來講,它是通過將底層來自不同站點的兩個物理存儲卷歸屬到不同 的Failure Group當(dāng)中,然后由這些物理存儲卷經(jīng)過文件系統(tǒng)格式化形成分布式文 件系統(tǒng),提供給上層應(yīng)用以文件的形式寫入數(shù)據(jù)。文件本身會被GPFS文件系統(tǒng)打 散形成若干文件碎片

18、,這些碎片在落盤時分別落入不同F(xiàn)ailure Group當(dāng)中的物理 磁盤,從而保證底層數(shù)據(jù)的雙副本。這種模式與前兩種模式的最大區(qū)別在于它的數(shù) 據(jù)落盤是根據(jù)NSD磁盤定義的服務(wù)實例順序來決定的,正常情況下我們需要定義本 站點的服務(wù)節(jié)點為磁盤的主服務(wù)節(jié)點,這樣的話兩個鏡像寫入的時候是靠GPFS位 于不同中心的兩個服務(wù)實例節(jié)點分別寫入,兩個服務(wù)實例之間也需要私有協(xié)議的交 互,相當(dāng)于數(shù)據(jù)的雙寫多了一個環(huán)節(jié)。關(guān)鍵因素基于系統(tǒng)級邏輯卷鏡像技術(shù)實現(xiàn)的數(shù)據(jù)復(fù)制,相對于其他類型的數(shù)據(jù)復(fù)制技術(shù)來講 風(fēng)險性較高,主要表現(xiàn)為以下幾個方面:一、性能方面的問題對于LVM和GPFS方式來講,對于數(shù)據(jù)庫的結(jié)構(gòu)化數(shù)據(jù)復(fù)制性能會

19、有較大損耗。 因為數(shù)據(jù)庫的讀寫需要經(jīng)過數(shù)據(jù)庫本身的存儲映射以及操作系統(tǒng)層的存儲映射之后 才能真正寫入存儲緩存??v向的路勁很長,性能損耗會比較大。而ASM本身是將 數(shù)據(jù)庫的映射和系統(tǒng)級的映射做到了一起,相對性能損耗會低很多。所以如果利用 這類型數(shù)據(jù)復(fù)制技術(shù)的話,數(shù)據(jù)庫層的存儲塊兒參數(shù)和操作系統(tǒng)層的存儲塊兒參數(shù) 設(shè)置要經(jīng)過一系列優(yōu)化。二、容錯性問題如果我們用做本地存儲高可用實現(xiàn)這種方式的鏡像,那么容錯性就不會有問題。因 為兩個鏡像副本的鏈路指標(biāo)可以認為是同質(zhì)的,鏡像之前的IO讀寫不會有差異。但 是如果用在容災(zāi)場合下,由于兩個鏡像副本的鏈路指標(biāo)完全不同,那么就要求系統(tǒng) 層能對正常場合下、故障場合下以

20、及故障恢復(fù)后場合下的讀寫差異有很好的容錯性。 比如說故障場合下的IO超時反饋速度、故障恢復(fù)之后的數(shù)據(jù)再同步問題。再有就是 關(guān)于應(yīng)用數(shù)據(jù)的容錯性,對于純粹操作系統(tǒng)層面的復(fù)制,完全無法避免應(yīng)用邏輯錯 誤。三、負擔(dān)過載問題其實這種技術(shù)在設(shè)計之初并沒有過多考慮過其在容災(zāi)中的數(shù)據(jù)復(fù)制問題,設(shè)計初衷 還是系統(tǒng)層的存儲卷的虛擬化管理。所以其靈活性以及擴展性優(yōu)于其在容災(zāi)數(shù)據(jù)復(fù) 制中的作用。如果非要把這類技術(shù)應(yīng)用到容災(zāi)場合的數(shù)據(jù)復(fù)制當(dāng)中,那么操作系統(tǒng) 層一方面要完成應(yīng)用功能載體作用,另外一方面要完成本地存儲卷虛擬化作用,還 要一個重量級的容災(zāi)數(shù)據(jù)復(fù)制作用。這種負擔(dān)會直接影響到其承載的數(shù)據(jù)庫應(yīng)用?;诖鎯W(wǎng)關(guān)雙寫

21、復(fù)制技術(shù)所謂存儲網(wǎng)關(guān)雙寫復(fù)制技術(shù),就是在物理存儲層之上增加一層網(wǎng)關(guān)技術(shù)用以實現(xiàn)存 儲底層的虛擬化以及高可用鏡像,并且由存儲網(wǎng)關(guān)來控制鏡像寫入的策略和模式。IBM EMC、NETAPP等公司都有相應(yīng)技術(shù)的產(chǎn)品方案?;趯懭朐砑安呗缘牟煌指饔袇^(qū)別。圖3.3-1、圖3.3-2、圖3.3-3分別是舊M SVC Split Cluster、EMCVplex Stretch Cluster、Netapp Metro Cluster。下面我們就其圖示、從原理上分別Mn;ttir進行分析和論述。圖 3.3-1 IBM SVC Split ClusterSVC ClLtJerTCPy-P足月同亞10 GR

22、0UP1SVC-C1圖 3.3-2 EMC Vplex Stretch ClusterrCP/111 :G 8( ? rj 憐檢叼A錢壬越物用ma圖 3.3-3 NetaApp Metro Cluster前提條件容災(zāi)站點之間需要SAN環(huán)境聯(lián)通,TCP/IP實現(xiàn)三層可達。兩個站點分別要部署各 自的存儲集群節(jié)點,共同組成存儲網(wǎng)關(guān)集群。假設(shè)要實現(xiàn)雙中心的自動化仲裁及切 換,那么第三個仲裁站點以及站點中承載仲裁軟件的計算及存儲載體也是必須的。復(fù)制原理對于Vplex Stretch Cluster來講,首先兩個存儲網(wǎng)關(guān)節(jié)點是一對類似ORACLE RAC 模式的AA模式集群節(jié)點。如圖3.3.2-2所示,兩

23、個節(jié)點都可以接受來自上層應(yīng)用的 讀寫請求。假設(shè)來A和B分別是來自底層存儲的兩個物理卷,那么經(jīng)過Vplex集群 化之后,這兩個物理卷被虛擬化集成為一個分布式共享卷C,對于C來講,兩邊的 應(yīng)用節(jié)點都可以看得到,都可以讀寫,它的底層又是有A和B兩個物理鏡像組成。 兩個站點在寫請求到來時,首先要完成本地A或B的寫入,然后需要把寫入請求傳 送給另外一個VPLEX節(jié)點來完成鏡像盤B或A的寫入。很顯然,兩邊同時寫入就 有可能帶來同一個數(shù)據(jù)塊兒的訪問競爭,這個時候Vplex節(jié)點靠他們共同維護的分 布式一致性緩存目錄來對競爭數(shù)據(jù)塊兒進行加鎖以及釋放等協(xié)同操作,最終完成對 數(shù)據(jù)塊兒的最后更新。當(dāng)發(fā)生鏈路故障而導(dǎo)致

24、一邊節(jié)點無法寫入時,那么節(jié)點會保 存相應(yīng)存儲日志用以故障恢復(fù)之后的數(shù)據(jù)同步。我們可以理解該同步模式類似于 Oracle的最大可用模式,正常情況下保證鏡像數(shù)據(jù)寫入的同步完成,當(dāng)故障時刻會 有timeout時間閾值來決定是否暫時切斷其中一個鏡像的寫。對于舊M SVC和NETAPP MCC架構(gòu)來講,它們同樣在存儲網(wǎng)關(guān)節(jié)點上實現(xiàn)對底 層兩個物理卷的鏡像綁定,但是這個卷并不是一個分布式共享卷的模式,僅僅是一 個實現(xiàn)了鏡像綁定的虛擬卷,對于卷的讀寫只能以其中一側(cè)節(jié)點為主,另外一側(cè)節(jié) 點為備。節(jié)點發(fā)生故障場合下實現(xiàn)節(jié)點主備切換,它比傳統(tǒng)HA模式的切換先進在 哪里呢?它的備節(jié)點是要從主節(jié)點上同步緩存的,所以一

25、旦切換發(fā)生,時間僅僅耗 費在虛擬卷的Ownership轉(zhuǎn)換上,緩存不需要重新讀入,從切換的時間上來講要比 傳統(tǒng)HA快很多,從而保障了容災(zāi)的RTO。那么MCC和SVC的區(qū)別在于什么地方呢?對于SVC的Split Cluster的兩個節(jié)點 來講,它們是兩個控制器節(jié)點組成的一個IO組,這個IO組意味著故障切換只能發(fā) 生在這兩個控制器節(jié)點之間,而且對于一個物理卷來講只能歸屬于一個IO組,當(dāng)這 個IO組不可用時,那么這個卷也就無法讀寫了。對于MCC來講,承載虛擬卷讀寫 的載體是SVM虛擬機,這個虛擬機是一個資源的組合體,可以動態(tài)組合網(wǎng)絡(luò)、存 儲以及存儲操作系統(tǒng)等資源,所以它能在組成集群的四個控制器節(jié)點上

26、進行動態(tài)切 換,理論上可以切換到任何一個控制器節(jié)點上,只不過其切換本身有一個故障優(yōu)先 級控制其切換的順序。如圖,SVM可以首先切換到A2節(jié)點上,當(dāng)A2節(jié)點也發(fā)生 故障時,可以切換到B1節(jié)點上,當(dāng)B1節(jié)點也發(fā)生故障時可以切換到B2節(jié)點上。關(guān)鍵因素基于存儲網(wǎng)關(guān)雙寫技術(shù)實現(xiàn)的容災(zāi)數(shù)據(jù)復(fù)制,可以將數(shù)據(jù)容災(zāi)管理功能從應(yīng)用及系 統(tǒng)層剝離,從而對上層影響相對很小,而且容災(zāi)針對性設(shè)計保障其功能實現(xiàn)上會更 優(yōu)。但是其實施的復(fù)雜度相對較高,而且對于以上不同架構(gòu)來講,其所承擔(dān)的風(fēng)險 也是不一樣的,所以在這類技術(shù)的應(yīng)用上,我們需要特別關(guān)注以下幾個方面: 一、架構(gòu)復(fù)雜性無論是以上哪種存儲網(wǎng)關(guān)復(fù)制技術(shù),那么從硬件條件上來

27、講,存儲這一層需要通過 硬件節(jié)點組成一層統(tǒng)一存儲集群。要想實現(xiàn)自動切換的話,那需要仲裁站點的參與。 也就是說從存儲這一層來講,其實兩個站點就是一個系統(tǒng)的整體了,底層的復(fù)雜性 就很高了。如果數(shù)據(jù)庫層、網(wǎng)絡(luò)層以及應(yīng)用層的架構(gòu)再稍微復(fù)雜一些的話,那么整 個容災(zāi)架構(gòu)的復(fù)雜度就會直線上升。二、架構(gòu)擴展性問題在這種容災(zāi)架構(gòu)下,其實存儲層不僅僅是作了一層虛擬化和集群化,更重要的是作 了一層存儲的集中化,存儲網(wǎng)關(guān)成為存儲的統(tǒng)一出口。那么存儲網(wǎng)關(guān)集群的橫向拉 伸能力制約了整個存儲系統(tǒng)的可擴展能力。當(dāng)我們的業(yè)務(wù)出現(xiàn)快速膨脹的場合下, 存儲網(wǎng)關(guān)集群的最大擴展能力以及其本身的縱向性能擴展性就會是一個關(guān)鍵性問題, 我們

28、必須考慮?;诖鎯Φ讓訅K兒復(fù)制技術(shù)基于物理存儲層之間的軟件復(fù)制技術(shù)是相對比較傳統(tǒng)的存儲復(fù)制技術(shù),應(yīng)用的時間 也比較長。幾乎每一個存儲廠商都會有針對性的解決方案。圖3.4-1是基于存儲軟 件復(fù)制技術(shù)的基本原理圖。圖3.4-1存儲層軟件復(fù)制前提條件對于物理存儲底層的塊兒復(fù)制技術(shù)來講,對于環(huán)境要求主要是存儲層的要求。容災(zāi) 站點之間需要SAN環(huán)境聯(lián)通,兩邊的存儲一般要求型號一致并且配置有專門的存儲 復(fù)制軟件以及相關(guān)許可。復(fù)制原理其實對于存儲存儲底層的塊兒復(fù)制技術(shù)來講,它跟上層的應(yīng)用層關(guān)系不大,主要是 依靠存儲層兩個節(jié)點來完成源到目標(biāo)的復(fù)制。當(dāng)上層應(yīng)用將數(shù)據(jù)寫入存儲的時候, 那么由存儲將這一 IO請求再

29、以塊兒的方式傳輸?shù)搅硗庖粋€存儲上,從而保證存儲設(shè) 備在塊兒級別上的一致性副本。對于同步復(fù)制來講,需要應(yīng)用端的IO請求等到存儲 層的復(fù)制完畢之后才會正常返回,對于異步復(fù)制來講,應(yīng)用IO請求跟底層復(fù)制沒有 任何關(guān)系,不需要等待復(fù)制結(jié)果。對于這種復(fù)制技術(shù)來講,兩個數(shù)據(jù)副本僅僅是數(shù) 據(jù)內(nèi)容相同,在上層沒有任何邏輯捆綁或者是虛擬化,所以上層應(yīng)用也是完全隔離 的兩套應(yīng)用,一旦存儲發(fā)生故障,無論上層應(yīng)用節(jié)點及網(wǎng)絡(luò)節(jié)點是否可用都需要發(fā) 生站點級切換實現(xiàn)業(yè)務(wù)連續(xù)性,存儲本身不能隔離開應(yīng)用發(fā)生切換。關(guān)鍵因素對于物理存儲層面的塊兒復(fù)制技術(shù),它剝離了對上層應(yīng)用的依賴,直接靠存儲來完 成數(shù)據(jù)復(fù)制。好的地方在于它的架構(gòu)相

30、對簡單、相關(guān)影響面較小,不好的地方在于 它的功能狹窄,功能僅僅在于數(shù)據(jù)的拷貝,對于上層應(yīng)用的支撐面兒很窄。所以對 于這種復(fù)制技術(shù)的把握需要注意以下幾個點:一、容災(zāi)的切換管理對于容災(zāi)的切換管理,我們需要決定好幾個問題:.切換的決策問題。如果故障集中在存儲層面,而其他層面不受任何影響的場合下, 那么是不是一定要執(zhí)行容災(zāi)切換?這需要一個完善的決策體系來支撐各種場合下的 故障應(yīng)對。.切換的流程以及技術(shù)管理體系建設(shè)。由于這種數(shù)據(jù)復(fù)制技術(shù)對上層依賴的耦合性 非常低,那么單純的存儲切換無法實現(xiàn),這就需要從上到下的一系列技術(shù)措施和管 理流程來應(yīng)對容災(zāi)切換。.回切的流程及技術(shù)管理體系建設(shè)。同樣當(dāng)故障恢復(fù)之后,我

31、們需要回切的時候, 這個過程雖然是個計劃內(nèi)的事件,但是可能相對比容災(zāi)切換更要復(fù)雜、更需要關(guān)注。 二、技術(shù)兼容性基于存儲底層的塊兒復(fù)制技術(shù),其中最重要的軟件依賴就是存儲復(fù)制軟件,但是這 個存儲復(fù)制軟件一般都是基于特定的存儲設(shè)備實現(xiàn)的,具有廠家或者設(shè)備壁壘。當(dāng) 我們的存儲呈現(xiàn)五花八樣的時候,那么這個核心的復(fù)制軟件可能也會呈現(xiàn)五花八門。 對于存儲的升級換代或者更換品牌等事件更是有諸多限制。所以我們在應(yīng)用此類技 術(shù)的時候要充分考慮到這一點。.數(shù)據(jù)復(fù)制技術(shù)對比分析關(guān)鍵維度的對比分析投資成本對比分析對于投資成本的分析,我們不僅僅要看建設(shè)成本更需要關(guān)注運維成本,不僅僅需要 關(guān)注設(shè)備成本更需要關(guān)注管理成本。本

32、文首先將成本劃分為幾個部分,然后根據(jù)每 一個部分成本按照定性分為高中低三個指標(biāo),最終得出的綜合分析如表4.1.1所示: 表4.1.1-1成本分析表建設(shè)成本項目9石網(wǎng)箔成本血郵款件成本運維官理容災(zāi)管理國蹌管理A低低低清中低B.1中花布 京1中中B2中低低窗高尚C.1詢商低中低高C2中鬲低中任中D中中商但茴中A=基于數(shù)堀庫關(guān)誤日志回故技術(shù).日1 =基于至婉靖痛號鏡像技術(shù)(數(shù)搖庫管理存儲卷彘像) B.2 =基子素統(tǒng)般夏堂卷鏡像技術(shù)(素輔層管理存情卷舞像. c.i -基于仃儲用裝雙號復(fù)制技法T.熱怒.模式).C 2 =基于存儲限關(guān)雙寫棄制技嗑:SVCSMCC 的).D二基子存懂底層塊兒要制技術(shù).A=基

33、于數(shù)據(jù)庫事務(wù)日志回放技術(shù)。=基于系統(tǒng)級邏輯卷鏡像技術(shù)(數(shù)據(jù)庫管理存儲卷鏡像)。=基于系統(tǒng)級邏輯卷鏡像技術(shù)(系統(tǒng)層管理存儲卷鏡像)。C.1 =基于存儲網(wǎng)關(guān)雙寫復(fù)制技術(shù)(Vplex模式)。C.2 =基于存儲網(wǎng)關(guān)雙寫復(fù)制技術(shù)(SVC&MCC模式)。D =基于存儲底層塊兒復(fù)制技術(shù)。對于以上成本分析,有幾個需要說明的地方。對于網(wǎng)絡(luò)成本,以太網(wǎng)三層可達我們認為成本屬于低指標(biāo),對于二層可達或者是需 要FC協(xié)議環(huán)境的我們認為成本屬于中指標(biāo),對于二層可達或者是FC環(huán)境的,而 且對帶寬要求非??量痰奈覀冋J為是高;對于設(shè)備成本,對于存儲兼容性沒有任何 要求的而且不需要購置硬件設(shè)備的,我們認為屬于低指標(biāo)。對存儲設(shè)備型

34、號有關(guān)聯(lián) 性要求的我們認為屬于中指標(biāo),對需要購置網(wǎng)關(guān)設(shè)備的我們認為是高指標(biāo);對于軟 件成本,如果有在數(shù)據(jù)庫層、系統(tǒng)層以及存儲層沒有任何附帶軟件許可的我們認為 屬于低指標(biāo),如果既有附帶軟件模塊兒而且還有容量許可等我們認為屬于高指標(biāo); 對于運維管理,不需要數(shù)據(jù)庫層面做特殊運維的我們認為屬于低指標(biāo),需要數(shù)據(jù)庫 維護的屬于中指標(biāo),需要存儲高度支持而且需要數(shù)據(jù)庫應(yīng)用等熟練實施整套切換的 屬于高指標(biāo);對于容災(zāi)管理來講,可以實現(xiàn)自動化切換或半自動切換的我們認為低 指標(biāo),需要人工切換的我們認為是中指標(biāo);需要組成專門的容災(zāi)決策管理體系并實 施專家級切換的我們認為是高指標(biāo);對于風(fēng)險管理成本完全取決于架構(gòu)本身的風(fēng)險

35、 程度高低。技術(shù)健壯性對比分析單就數(shù)據(jù)庫層面的數(shù)據(jù)來講,從復(fù)制有效性上來講基于事務(wù)日志回放技術(shù)可以有效 避開底層物理存儲卷的物理視圖,就數(shù)據(jù)庫邏輯層面組成很好的邏輯視圖,數(shù)據(jù)的 復(fù)制可以很好避開底層發(fā)生的邏輯塊兒錯誤等問題。而其他任何一項技術(shù)都無法避 免存儲塊兒邏輯錯誤問題,因為它們在復(fù)制數(shù)據(jù)的過程中跟上層應(yīng)用沒有任何校驗 過程,那么當(dāng)存儲塊兒上發(fā)生的配置性邏輯錯誤就會導(dǎo)致上層應(yīng)用數(shù)據(jù)出現(xiàn)校驗錯 誤。從技術(shù)的專有屬性上來講,基于系統(tǒng)級邏輯卷鏡像技術(shù)的初衷在于數(shù)據(jù)的本地保護, 并不是基于容災(zāi)需求所生的技術(shù),所以在跨地域鏈路的容錯技術(shù)上要弱于其他的專 用容災(zāi)數(shù)據(jù)復(fù)制技術(shù)。從數(shù)據(jù)傳輸?shù)膹?fù)雜性上來講,

36、除了上述C.1屬于雙向同步技術(shù),其他技術(shù)全部屬于 單向同步技術(shù),雙向同步技術(shù)的穩(wěn)定性和技術(shù)可靠性相對會低于單向同步技術(shù)。技術(shù)風(fēng)險對比分析一、應(yīng)用數(shù)據(jù)有效性風(fēng)險 舉一個極端的案例,假設(shè)一個系統(tǒng)層面的誤操作把數(shù)據(jù)庫卷的元數(shù)據(jù)清除掉了,那 么主庫在下次要訪問到這個卷上數(shù)據(jù)的時候可能就要發(fā)生宕機。這個時候如果我們 是基于事務(wù)回放技術(shù)做的數(shù)據(jù)復(fù)制,那么這部分誤操作就不會被復(fù)制到備庫,備庫 數(shù)據(jù)依然可用。但是如果從操作系統(tǒng)層或者是存儲層做的數(shù)據(jù)復(fù)制,它是無法感知 這一誤操作的無效性,所以邏輯錯誤依然會被復(fù)制到災(zāi)備中心,那么最終的結(jié)果就 是兩個數(shù)據(jù)中心的數(shù)據(jù)庫都無法工作。二、遠程鏈路抖動風(fēng)險容災(zāi)必然會涉及到

37、遠程鏈路,那么遠程鏈路相對于本地鏈路來講,抖動問題就是一 個很難解決掉的問題。既然不能解決這個問題,那么就應(yīng)該看到一旦這個問題發(fā)生 了,帶給我們的風(fēng)險是什么:首先我們來看事務(wù)日志回放技術(shù),假設(shè)我們使用的是近似同步模式,那么鏈路一旦 發(fā)生抖動,直接影響就是日志同步會隨著發(fā)生不間斷超時,主庫緩存里的日志條目 無法及時同步到備庫。當(dāng)鏈路恢復(fù)穩(wěn)定之后,歸檔日志和在線日志分別發(fā)起同步請 求將主備庫數(shù)據(jù)追為同步,這期間主庫不受任何影響。接著我們來看系統(tǒng)級鏡像技術(shù),遠程鏈路抖動導(dǎo)致遠程鏡像寫入失敗,當(dāng)然這個失 敗會有一個從底層存儲、光纖鏈路以及操作系統(tǒng)等多層的超時的傳遞效應(yīng),每一層 都會有自己的超時策略,反

38、應(yīng)到數(shù)據(jù)庫層之后,這就是一個不小的應(yīng)用等待。當(dāng)鏈 路恢復(fù)穩(wěn)定之后,會有一系列的鏡像同步過程,這個鏡像同步過程需要對主鏡像進 行掃描分析,會有很高的性能消耗。然后我們再來看存儲網(wǎng)關(guān)雙寫技術(shù),鏈路抖動一旦超過仲裁閥值就會引起存儲網(wǎng)關(guān) 集群的仲裁,這個仲裁結(jié)果不確定,有可能會發(fā)生切換而且會頻繁切換,一旦發(fā)生 切換不僅僅要面對兩邊數(shù)據(jù)主備同步模式頻繁變化,而且還會面對上層應(yīng)用在面臨 鏈路抖動情況下的跨數(shù)據(jù)中心的頻繁訪問,相當(dāng)于將不穩(wěn)定問題又向上轉(zhuǎn)嫁了一層。 這樣的復(fù)雜問題組合到一起,風(fēng)險性相對較高。最后我們再看物理存儲層的塊兒復(fù)制技術(shù),其實他和事務(wù)日志回放技術(shù)面臨的風(fēng)險 幾乎相當(dāng),影響的僅僅是遠程數(shù)據(jù)

39、副本的繼續(xù)同步,本地存儲寫入不受任何影響。 鏈路穩(wěn)定后,同樣面臨存儲層底層數(shù)據(jù)追平問題,當(dāng)然這個策略和模式根據(jù)不同廠 商的設(shè)計原理會有優(yōu)劣之分,這里就不再詳細討論。三、容災(zāi)切換技術(shù)復(fù)雜度風(fēng)險探討這個問題的前提條件是拋開一切其他類似鏈路抖動之類問題,僅僅探討當(dāng)發(fā)生 站點級故障并且短時間無法恢復(fù)故障時刻,不同數(shù)據(jù)復(fù)制技術(shù)帶給我們整個容災(zāi)切 換的復(fù)雜度?;诖鎯W(wǎng)關(guān)雙寫技術(shù)基本上會有一套完善的存儲層切換機制,依靠 仲裁站點能夠?qū)崿F(xiàn)自動化切換,只要雙中心之間的SAN環(huán)境相通,數(shù)據(jù)庫應(yīng)用層自 然也是無縫切換?;趹?yīng)用事務(wù)日志回放技術(shù)就完全要靠人工來實現(xiàn)數(shù)據(jù)庫的切換 以及應(yīng)用訪問的切換了,需要依靠數(shù)據(jù)庫專家來判斷主備庫狀態(tài)以及具體的切換策 略。這個

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論