數(shù)據(jù)遷移是各企業(yè)單位IT建設(shè)經(jīng)常面對的工作。當(dāng)今數(shù)據(jù)遷移的主要難題是進(jìn)行一次成功的數(shù)據(jù)遷移時(shí)間要求越來越短。然而應(yīng)用在存儲方面的需求不斷增加,存儲的升級和更替更加頻繁;同時(shí),企業(yè)的應(yīng)用趨向于全年不停頓運(yùn)行、對系統(tǒng)的可靠性、可用性要求不斷提高,維護(hù)時(shí)間窗口的不斷減少等因素,使得進(jìn)行一次平滑的成功數(shù)據(jù)遷移越來越具挑戰(zhàn)。某汽車制造公司在新數(shù)據(jù)中心遷移的過程中,利用多種數(shù)據(jù)遷移技術(shù),完成了各應(yīng)用系統(tǒng)的遷移工作。其中,基于存儲虛擬機(jī)的數(shù)據(jù)遷移技術(shù),為首次使用。
對于數(shù)據(jù)的遷移,目前主要采用如下五種方法:
基于主機(jī)操作系統(tǒng)邏輯卷鏡像技術(shù)的數(shù)據(jù)遷移
基于數(shù)據(jù)庫備份和恢復(fù)技術(shù)的數(shù)據(jù)遷移
基于應(yīng)用層工具的數(shù)據(jù)遷移
基于磁盤陣列遠(yuǎn)程數(shù)據(jù)復(fù)制技術(shù)的數(shù)據(jù)遷移
基于存儲虛擬化技術(shù)的數(shù)據(jù)遷移
此種數(shù)據(jù)遷移方法,主要利用業(yè)務(wù)主機(jī)操作系統(tǒng)內(nèi)置的邏輯卷管理系統(tǒng)的邏輯卷鏡像(LV Mirror)技術(shù),可以保證業(yè)務(wù)數(shù)據(jù)在原有的磁盤陣列和新的磁盤陣列上保持同步,兩邊數(shù)據(jù)完全一致。此種方法存在如下優(yōu)點(diǎn):
步驟簡單,容易實(shí)現(xiàn),速度快;
不需要考慮到上層數(shù)據(jù)應(yīng)用系統(tǒng)的內(nèi)部的結(jié)構(gòu);
可以在線進(jìn)行,只需要較短的停機(jī)時(shí)間;
但是,利用這種方法,也存在如下的問題:
在進(jìn)行初始化數(shù)據(jù)同步的時(shí)候,會對在線系統(tǒng)的性能造成較大的沖擊;
只適合部署了邏輯卷管理系統(tǒng)的主機(jī),主要是小型機(jī)。
此種數(shù)據(jù)遷移方法,主要通過數(shù)據(jù)庫自帶的備份和恢復(fù)功能以及邏輯日志追加的技術(shù),實(shí)現(xiàn)一個(gè)數(shù)據(jù)逐步遷移的方法,最后達(dá)到把數(shù)據(jù)從原有的磁盤陣列完全遷移到新的磁盤陣列的目的。本方法比較安全,當(dāng)數(shù)據(jù)遷移不成功時(shí),不影響生產(chǎn)系統(tǒng)的正常運(yùn)行,但是遷移時(shí)間較長,對技術(shù)要求較高,而且需要專門用于數(shù)據(jù)遷移的一臺與生產(chǎn)主機(jī)環(huán)境一樣的主機(jī),硬件配置可以稍低一點(diǎn)。
此種數(shù)據(jù)遷移的方法,利用一些第三方的工具實(shí)現(xiàn)數(shù)據(jù)遷移,如文件系統(tǒng)層面實(shí)現(xiàn)的Veritas的VVR,虛擬化平臺層面實(shí)現(xiàn)的VMware vMotion等。這些方法都是特定應(yīng)用的針對性工具,對特定應(yīng)用比較好用,但需要滿足一些前提條件,如Veritas的VVR只能基于VxFS文件系統(tǒng)上的卷復(fù)制,對于其它的文件系統(tǒng)或raw device,則無法使用。
此種數(shù)據(jù)遷移方法,可以在同一個(gè)磁盤陣列內(nèi)通過基于磁盤陣列的克隆軟件或卷遷移軟件實(shí)現(xiàn)數(shù)據(jù)復(fù)制,完成數(shù)據(jù)遷移??梢詫?shí)現(xiàn)在兩套磁盤陣列之間的數(shù)據(jù)遷移,并且此種方法不占用主機(jī)資源,對應(yīng)用透明。但是源磁盤陣列和目標(biāo)磁盤陣列必須是同一廠家的同一系列的產(chǎn)品,而且遷移過程對生產(chǎn)系統(tǒng)有一定的性能影響。
基于存儲虛擬化技術(shù)的數(shù)據(jù)遷移,主要是解決異構(gòu)存儲間海量數(shù)據(jù)遷移難題。該技術(shù)繼承了存儲層進(jìn)行數(shù)據(jù)遷移的應(yīng)用透明、遷移效率高的優(yōu)勢,與此同時(shí)在虛擬化基礎(chǔ)上將原來不能完成數(shù)據(jù)復(fù)制的存儲設(shè)備整合在一起,形成統(tǒng)一存儲池,這時(shí)物理上在兩個(gè)磁盤的數(shù)據(jù)卷之間的遷移,在邏輯上來講是在整合虛擬后的同一個(gè)磁盤陣列內(nèi)卷遷移。由于不涉及主機(jī)的任何設(shè)置修改,實(shí)施比較簡單,遷移速度非??臁4藬?shù)據(jù)遷移技術(shù)方案示意圖如圖1所示。
圖1 常見的基于存儲虛擬化的數(shù)據(jù)遷移方案
圖2 基于VSM存儲虛機(jī)的數(shù)據(jù)遷移技術(shù)原理
但是,這類數(shù)據(jù)遷移方法的前提是需要對原有存儲實(shí)施虛擬化,涉及存儲路徑的改變,主機(jī)對存儲LUN的重新識別,因此存在業(yè)務(wù)停機(jī)窗口,無法實(shí)現(xiàn)不停機(jī)數(shù)據(jù)遷移。
總體上,基于主機(jī)邏輯卷鏡像技術(shù)的數(shù)據(jù)遷移、基于數(shù)據(jù)庫備份和恢復(fù)技術(shù)的數(shù)據(jù)遷移、基于應(yīng)用層工具的數(shù)據(jù)遷移都屬于基于主機(jī)服務(wù)器層的遷移技術(shù);基于磁盤陣列數(shù)據(jù)復(fù)制技術(shù)的數(shù)據(jù)遷移、基于存儲虛擬化技術(shù)的數(shù)據(jù)遷移都屬于基于存儲層的數(shù)據(jù)遷移技術(shù)。
基于存儲的數(shù)據(jù)遷移是一次性的將數(shù)據(jù)從一個(gè)存儲轉(zhuǎn)移到另一個(gè)存儲系統(tǒng)上,它包括對新存儲的啟用和數(shù)據(jù)可用性的保證。在一些情況下,基于存儲的數(shù)據(jù)遷移是進(jìn)行數(shù)據(jù)大集中的手段,非常適合大規(guī)模數(shù)據(jù)遷移需求,因此被許多數(shù)據(jù)遷移項(xiàng)目采用為主要遷移手段。
這種數(shù)據(jù)遷移技術(shù)基于創(chuàng)新的存儲虛擬化技術(shù)——Virtual Storage Machine(VSM)虛擬存儲機(jī)技術(shù)。這種技術(shù)創(chuàng)造性地將服務(wù)器虛機(jī)的概念引入存儲,在一臺物理存儲內(nèi)允許用戶按照業(yè)務(wù)和應(yīng)用的要求定義多個(gè)Virtual Storage Machine(VSM), VSM與一臺存儲類似,具備自己的存儲ID,設(shè)備序列號和端口WWN,通過VSM的定義,能虛擬化一臺物理的存儲陣列,因此,服務(wù)器不會察覺到所使用的資源實(shí)際上是分布在不同的存儲設(shè)備中。
借助虛擬存儲的技術(shù),數(shù)據(jù)源存儲設(shè)備的ID被完整地復(fù)制到數(shù)據(jù)目標(biāo)存儲設(shè)備上,而服務(wù)器無法察覺存儲設(shè)備物理身份的變化,這一過程對任何操作系統(tǒng)、虛擬機(jī)監(jiān)控程序,服務(wù)器、服務(wù)器的路徑管理軟件,服務(wù)器集群軟件以及存儲網(wǎng)絡(luò)連接等都是透明的。具體原理如圖2所示。
接下來,具體闡述利用VSM虛擬存儲技術(shù)進(jìn)行數(shù)據(jù)遷移的具體步驟。
如圖3,原存儲(ID:#175 00)上的數(shù)據(jù),比如SCSI標(biāo)識為10:00的LUN上的數(shù)據(jù)遷移到目標(biāo)存儲(ID:#20700)的SCSI標(biāo)識為22:00的LUN上。目標(biāo)存儲具備VSM虛擬存儲功能。
第一,利用目標(biāo)存儲的VSM功能,在目標(biāo)存儲上創(chuàng)建一個(gè)與原存儲具備相同標(biāo)識17500,包括設(shè)備及FC網(wǎng)絡(luò)標(biāo)識的VSM設(shè)備;
第二,利用傳統(tǒng)的卷虛擬化功能,將目標(biāo)存儲上的LUN 22:00在VSM 17500上創(chuàng)建一個(gè)虛擬卷,LUN ID與原卷10:00一致,但物理空間是目標(biāo)存儲的LUN 22:00;
圖3 基于VSM存儲虛機(jī)進(jìn)行數(shù)據(jù)遷移步驟示意圖一
圖4 基于VSM存儲虛機(jī)進(jìn)行數(shù)據(jù)遷移步驟示意圖二
第三,將目標(biāo)存儲和目標(biāo)卷與主機(jī)建立路徑,作為同一邏輯路徑下的物理備路徑,主機(jī)感知路徑無改變,I/O無影響;
第四,建立原卷LUN10:00與目標(biāo)卷的LUN22:00的數(shù)據(jù)同步關(guān)系,運(yùn)用的技術(shù)是傳統(tǒng)的卷復(fù)制與拷貝技術(shù);
第五,待數(shù)據(jù)同步完畢,原卷LUN10:00與目標(biāo)卷的LUN22:00的數(shù)據(jù)完全一致,斷開主機(jī)與原存儲的連接,I/O的邏輯路徑依然沒變,實(shí)質(zhì)上是把主路徑由原路徑切換為之前的備路徑:主機(jī)與目標(biāo)存儲之間的路徑,因此,這種切換對業(yè)務(wù)無影響,數(shù)據(jù)遷移完畢。
北宋初,會稽云門寺僧、宋真宗賜號“?;鄞髱煛钡闹傩葑饔性娂短煲率逶仭?。其詩集名可證北宋人仍確知天衣峰(法華山)而不是秦望山有十峰??梢詤⒖缄悩蝮A,紹興地方文獻(xiàn)考錄〔M〕,杭州:浙江人民出版社,1983,84。
四、五步驟可見圖4所示。
以下是對各數(shù)據(jù)遷移技術(shù)的對比評估。
較短的停機(jī)時(shí)間;可以根據(jù)業(yè)務(wù)情況,LUN級別,可靈活控制拷貝速度;需要消耗較少的主機(jī)端資源(文件系統(tǒng)層次鏡像),業(yè)務(wù)高峰時(shí)性能下降>10%;完全采用系統(tǒng)管理員熟悉的文件系統(tǒng)命令,難度很小且易控制。
停機(jī)2次;速度和性能中等;需要消耗一定的主機(jī)端資源(數(shù)據(jù)庫層次log);實(shí)施難度取決于對數(shù)據(jù)庫的熟悉程度(注意數(shù)據(jù)庫的no log操作)。
停機(jī)1-2次;速度較快,但不能靈活調(diào)節(jié);需消耗陣列的控制器能力和大量緩存資源;主機(jī)IO需增加一定的時(shí)延,若在同機(jī)房遷移則影響較??;需仔細(xì)規(guī)劃,確保陣列和主機(jī)之間的數(shù)據(jù)完整性;遷移結(jié)束后測試驗(yàn)證可回退性差。存在安全隱患,實(shí)施案例很少。
停機(jī)2次;速度可控;需要占用5-10%的主機(jī)系統(tǒng)資源;實(shí)施難度取決于數(shù)據(jù)遷移服務(wù)人員實(shí)施能力。
停機(jī)1次,遷移完成后的I/O切換速度很快,非常靈活;不消耗任何主機(jī)資源,需消耗陣列的控制器能力和大量緩存資源; 主機(jī)IO需增加微不足道的時(shí)延,總體在2ms內(nèi);需要將外部存儲FC端口和目標(biāo)存儲邏輯連接,以便能識別和虛擬化外部存儲的LUN。然后通過卷遷移將外部存儲的卷在線遷移到目標(biāo)存儲內(nèi)部。每一步需要手工操作,無法腳本自動化。
無計(jì)劃停機(jī)時(shí)間,可全部在線實(shí)施;速度很快,非常靈活;不消耗任何主機(jī)資源,需消耗陣列的控制器能力和大量緩存資源;主機(jī)IO需增加微不足道的時(shí)延,總體在2ms內(nèi);需要將外部存儲FC端口和目標(biāo)存儲邏輯連接,以便能識別和虛擬化外部存儲的LUN。之后具體遷移操作可近自動化操作。原存儲上的其它配置也自動遷移到新存儲上,大幅減少了實(shí)施工作量。
某汽車制造公司現(xiàn)有各種數(shù)據(jù)類型及特點(diǎn)的應(yīng)用系統(tǒng)。如公司最核心的業(yè)務(wù)SAP系統(tǒng),全年無休的商務(wù)CRM系統(tǒng),非結(jié)構(gòu)化數(shù)據(jù)的workspace系統(tǒng),大數(shù)據(jù)量的數(shù)據(jù)倉庫系統(tǒng),基于VMWare虛擬化構(gòu)架的應(yīng)用系統(tǒng)。
在各類應(yīng)用系統(tǒng)中,SAP系統(tǒng)是公司最核心的應(yīng)用系統(tǒng),包含了企業(yè)運(yùn)營最重要的數(shù)據(jù),同時(shí)也是數(shù)據(jù)量較大的一個(gè)系統(tǒng)。SAP系統(tǒng)約有6TB的數(shù)據(jù),在原有的存儲上分配了15個(gè)LUN。類似CRM系統(tǒng)這種公司商務(wù)領(lǐng)域最重要的系統(tǒng),總計(jì)約有5TB的數(shù)據(jù),但應(yīng)用的特性決定了該應(yīng)用是不允許有停機(jī)時(shí)間的。如數(shù)據(jù)倉庫系統(tǒng)這種數(shù)據(jù)量最大的分析、決策型系統(tǒng)有約10TB的數(shù)據(jù)。數(shù)據(jù)量決定了數(shù)據(jù)遷移的效率要求。
根據(jù)這幾類系統(tǒng)的特殊性及業(yè)務(wù)要求,選擇基于VSM技術(shù)的數(shù)據(jù)遷移方案完成了數(shù)據(jù)遷移,相比較傳統(tǒng)的數(shù)據(jù)遷移方案來說,VSM的優(yōu)點(diǎn)在于遷移過程中,應(yīng)用系統(tǒng)是幾乎感知不到的。同時(shí),也減少了約16-20小時(shí)的遷移時(shí)間和近90%的遷移工作量,并且降低了因停機(jī)導(dǎo)致的業(yè)務(wù)中斷及數(shù)據(jù)錯(cuò)漏的風(fēng)險(xiǎn),降低了因遷移對業(yè)務(wù)使用造成的性能影響,確保了整個(gè)數(shù)據(jù)遷移的安全、高效。
數(shù)據(jù)遷移在數(shù)據(jù)中心里是高概率任務(wù),不僅需要投入相當(dāng)?shù)馁Y源,而且伴隨著很大的實(shí)施風(fēng)險(xiǎn),實(shí)際上IT部門可以參考最佳實(shí)踐經(jīng)驗(yàn)并借助創(chuàng)新技術(shù)來減少投入、降低風(fēng)險(xiǎn)。基于VSM的存儲虛機(jī)的NDM就是這樣的創(chuàng)新技術(shù),用來幫助IT用戶實(shí)現(xiàn)目標(biāo)、保持競爭力。