數據遷移是各企業單位IT建設經常面對的工作。當今數據遷移的主要難題是進行一次成功的數據遷移時間要求越來越短。然而應用在存儲方面的需求不斷增加,存儲的升級和更替更加頻繁;同時,企業的應用趨向于全年不停頓運行、對系統的可靠性、可用性要求不斷提高,維護時間窗口的不斷減少等因素,使得進行一次平滑的成功數據遷移越來越具挑戰。某汽車制造公司在新數據中心遷移的過程中,利用多種數據遷移技術,完成了各應用系統的遷移工作。其中,基于存儲虛擬機的數據遷移技術,為首次使用。
對于數據的遷移,目前主要采用如下五種方法:
基于主機操作系統邏輯卷鏡像技術的數據遷移
基于數據庫備份和恢復技術的數據遷移
基于應用層工具的數據遷移
基于磁盤陣列遠程數據復制技術的數據遷移
基于存儲虛擬化技術的數據遷移
此種數據遷移方法,主要利用業務主機操作系統內置的邏輯卷管理系統的邏輯卷鏡像(LV Mirror)技術,可以保證業務數據在原有的磁盤陣列和新的磁盤陣列上保持同步,兩邊數據完全一致。此種方法存在如下優點:
步驟簡單,容易實現,速度快;
不需要考慮到上層數據應用系統的內部的結構;
可以在線進行,只需要較短的停機時間;
但是,利用這種方法,也存在如下的問題:
在進行初始化數據同步的時候,會對在線系統的性能造成較大的沖擊;
只適合部署了邏輯卷管理系統的主機,主要是小型機。
此種數據遷移方法,主要通過數據庫自帶的備份和恢復功能以及邏輯日志追加的技術,實現一個數據逐步遷移的方法,最后達到把數據從原有的磁盤陣列完全遷移到新的磁盤陣列的目的。本方法比較安全,當數據遷移不成功時,不影響生產系統的正常運行,但是遷移時間較長,對技術要求較高,而且需要專門用于數據遷移的一臺與生產主機環境一樣的主機,硬件配置可以稍低一點。
此種數據遷移的方法,利用一些第三方的工具實現數據遷移,如文件系統層面實現的Veritas的VVR,虛擬化平臺層面實現的VMware vMotion等。這些方法都是特定應用的針對性工具,對特定應用比較好用,但需要滿足一些前提條件,如Veritas的VVR只能基于VxFS文件系統上的卷復制,對于其它的文件系統或raw device,則無法使用。
此種數據遷移方法,可以在同一個磁盤陣列內通過基于磁盤陣列的克隆軟件或卷遷移軟件實現數據復制,完成數據遷移。可以實現在兩套磁盤陣列之間的數據遷移,并且此種方法不占用主機資源,對應用透明。但是源磁盤陣列和目標磁盤陣列必須是同一廠家的同一系列的產品,而且遷移過程對生產系統有一定的性能影響。
基于存儲虛擬化技術的數據遷移,主要是解決異構存儲間海量數據遷移難題。該技術繼承了存儲層進行數據遷移的應用透明、遷移效率高的優勢,與此同時在虛擬化基礎上將原來不能完成數據復制的存儲設備整合在一起,形成統一存儲池,這時物理上在兩個磁盤的數據卷之間的遷移,在邏輯上來講是在整合虛擬后的同一個磁盤陣列內卷遷移。由于不涉及主機的任何設置修改,實施比較簡單,遷移速度非常快。此數據遷移技術方案示意圖如圖1所示。

圖1 常見的基于存儲虛擬化的數據遷移方案

圖2 基于VSM存儲虛機的數據遷移技術原理
但是,這類數據遷移方法的前提是需要對原有存儲實施虛擬化,涉及存儲路徑的改變,主機對存儲LUN的重新識別,因此存在業務停機窗口,無法實現不停機數據遷移。
總體上,基于主機邏輯卷鏡像技術的數據遷移、基于數據庫備份和恢復技術的數據遷移、基于應用層工具的數據遷移都屬于基于主機服務器層的遷移技術;基于磁盤陣列數據復制技術的數據遷移、基于存儲虛擬化技術的數據遷移都屬于基于存儲層的數據遷移技術。
基于存儲的數據遷移是一次性的將數據從一個存儲轉移到另一個存儲系統上,它包括對新存儲的啟用和數據可用性的保證。在一些情況下,基于存儲的數據遷移是進行數據大集中的手段,非常適合大規模數據遷移需求,因此被許多數據遷移項目采用為主要遷移手段。
這種數據遷移技術基于創新的存儲虛擬化技術——Virtual Storage Machine(VSM)虛擬存儲機技術。這種技術創造性地將服務器虛機的概念引入存儲,在一臺物理存儲內允許用戶按照業務和應用的要求定義多個Virtual Storage Machine(VSM), VSM與一臺存儲類似,具備自己的存儲ID,設備序列號和端口WWN,通過VSM的定義,能虛擬化一臺物理的存儲陣列,因此,服務器不會察覺到所使用的資源實際上是分布在不同的存儲設備中。
借助虛擬存儲的技術,數據源存儲設備的ID被完整地復制到數據目標存儲設備上,而服務器無法察覺存儲設備物理身份的變化,這一過程對任何操作系統、虛擬機監控程序,服務器、服務器的路徑管理軟件,服務器集群軟件以及存儲網絡連接等都是透明的。具體原理如圖2所示。
接下來,具體闡述利用VSM虛擬存儲技術進行數據遷移的具體步驟。
如圖3,原存儲(ID:#175 00)上的數據,比如SCSI標識為10:00的LUN上的數據遷移到目標存儲(ID:#20700)的SCSI標識為22:00的LUN上。目標存儲具備VSM虛擬存儲功能。
第一,利用目標存儲的VSM功能,在目標存儲上創建一個與原存儲具備相同標識17500,包括設備及FC網絡標識的VSM設備;
第二,利用傳統的卷虛擬化功能,將目標存儲上的LUN 22:00在VSM 17500上創建一個虛擬卷,LUN ID與原卷10:00一致,但物理空間是目標存儲的LUN 22:00;

圖3 基于VSM存儲虛機進行數據遷移步驟示意圖一

圖4 基于VSM存儲虛機進行數據遷移步驟示意圖二
第三,將目標存儲和目標卷與主機建立路徑,作為同一邏輯路徑下的物理備路徑,主機感知路徑無改變,I/O無影響;
第四,建立原卷LUN10:00與目標卷的LUN22:00的數據同步關系,運用的技術是傳統的卷復制與拷貝技術;
第五,待數據同步完畢,原卷LUN10:00與目標卷的LUN22:00的數據完全一致,斷開主機與原存儲的連接,I/O的邏輯路徑依然沒變,實質上是把主路徑由原路徑切換為之前的備路徑:主機與目標存儲之間的路徑,因此,這種切換對業務無影響,數據遷移完畢。
北宋初,會稽云門寺僧、宋真宗賜號“海慧大師”的仲休作有詩集《天衣十峰詠》。其詩集名可證北宋人仍確知天衣峰(法華山)而不是秦望山有十峰。可以參考陳橋驛,紹興地方文獻考錄〔M〕,杭州:浙江人民出版社,1983,84。
四、五步驟可見圖4所示。
以下是對各數據遷移技術的對比評估。
較短的停機時間;可以根據業務情況,LUN級別,可靈活控制拷貝速度;需要消耗較少的主機端資源(文件系統層次鏡像),業務高峰時性能下降>10%;完全采用系統管理員熟悉的文件系統命令,難度很小且易控制。
停機2次;速度和性能中等;需要消耗一定的主機端資源(數據庫層次log);實施難度取決于對數據庫的熟悉程度(注意數據庫的no log操作)。
停機1-2次;速度較快,但不能靈活調節;需消耗陣列的控制器能力和大量緩存資源;主機IO需增加一定的時延,若在同機房遷移則影響較小;需仔細規劃,確保陣列和主機之間的數據完整性;遷移結束后測試驗證可回退性差。存在安全隱患,實施案例很少。
停機2次;速度可控;需要占用5-10%的主機系統資源;實施難度取決于數據遷移服務人員實施能力。
停機1次,遷移完成后的I/O切換速度很快,非常靈活;不消耗任何主機資源,需消耗陣列的控制器能力和大量緩存資源; 主機IO需增加微不足道的時延,總體在2ms內;需要將外部存儲FC端口和目標存儲邏輯連接,以便能識別和虛擬化外部存儲的LUN。然后通過卷遷移將外部存儲的卷在線遷移到目標存儲內部。每一步需要手工操作,無法腳本自動化。
無計劃停機時間,可全部在線實施;速度很快,非常靈活;不消耗任何主機資源,需消耗陣列的控制器能力和大量緩存資源;主機IO需增加微不足道的時延,總體在2ms內;需要將外部存儲FC端口和目標存儲邏輯連接,以便能識別和虛擬化外部存儲的LUN。之后具體遷移操作可近自動化操作。原存儲上的其它配置也自動遷移到新存儲上,大幅減少了實施工作量。
某汽車制造公司現有各種數據類型及特點的應用系統。如公司最核心的業務SAP系統,全年無休的商務CRM系統,非結構化數據的workspace系統,大數據量的數據倉庫系統,基于VMWare虛擬化構架的應用系統。
在各類應用系統中,SAP系統是公司最核心的應用系統,包含了企業運營最重要的數據,同時也是數據量較大的一個系統。SAP系統約有6TB的數據,在原有的存儲上分配了15個LUN。類似CRM系統這種公司商務領域最重要的系統,總計約有5TB的數據,但應用的特性決定了該應用是不允許有停機時間的。如數據倉庫系統這種數據量最大的分析、決策型系統有約10TB的數據。數據量決定了數據遷移的效率要求。
根據這幾類系統的特殊性及業務要求,選擇基于VSM技術的數據遷移方案完成了數據遷移,相比較傳統的數據遷移方案來說,VSM的優點在于遷移過程中,應用系統是幾乎感知不到的。同時,也減少了約16-20小時的遷移時間和近90%的遷移工作量,并且降低了因停機導致的業務中斷及數據錯漏的風險,降低了因遷移對業務使用造成的性能影響,確保了整個數據遷移的安全、高效。
數據遷移在數據中心里是高概率任務,不僅需要投入相當的資源,而且伴隨著很大的實施風險,實際上IT部門可以參考最佳實踐經驗并借助創新技術來減少投入、降低風險。基于VSM的存儲虛機的NDM就是這樣的創新技術,用來幫助IT用戶實現目標、保持競爭力。