吳惠, 劉江濤, 陳建兵
(云南師范大學 信息管理處,云南 昆明 650500)
RAID(Redundant Array of Independent Disks,獨立磁盤冗余陣列)實驗是數(shù)據(jù)存儲類實驗中最基礎(chǔ)、最重要的組成部分.通過對磁盤陣列服務器的配置與測試,可以幫助學生加深理解各種RAID的工作原理、特點,熟練掌握常規(guī)的數(shù)據(jù)修復技術(shù)等維護工作,為下一步學習高級數(shù)據(jù)存儲知識打下堅實基礎(chǔ).在傳統(tǒng)實驗教學中,RAID實驗對實驗設(shè)備的要求很高,部分學校由于經(jīng)費投入不足、硬件設(shè)施不完善和管理等因素無法開設(shè)該實驗,只能通過教學課件對RAID做理論層次上的介紹,理論與實踐相脫節(jié),學生在該課程的技術(shù)層面收獲甚少.
針對上述問題,采用云南師范大學已建成的VMware vSphere云計算平臺構(gòu)建虛擬實驗環(huán)境,完成RAID實驗,實現(xiàn)了只有在專用的服務器上才能完成的RAID的配置、測試與數(shù)據(jù)修復操作.
vSphere是當今最流行的虛擬化平臺,是VMware公司推出的一套服務器虛擬化解決方案,目前的最新版本為5.5.vSphere 5中的核心組件為VMware ESXi.ESXi與Citrix的XenServer相似,它是一款可以獨立安裝和運行在祼機上的系統(tǒng).與早期的VMware Workstation軟件不同,最新版vSpher不再依存于宿主操作系統(tǒng).在ESXi安裝好以后,可以通過vSphere Client遠程連接控制,在ESXi服務器上創(chuàng)建多個VM(Virtual Machine,虛擬機),為這些VM安裝好Linux/Windows Server系統(tǒng)使之成為能提供各種網(wǎng)絡應用服務的虛擬服務器,ESXi從內(nèi)核級支持硬件虛擬化,運行于其中的虛擬服務器在性能與穩(wěn)定性上不亞于普通的硬件服務器,而且更易于管理維護[1].
目前,構(gòu)建vSphere云計算平臺是解決高校服務器管理最為便捷的方法之一.云南師范大學采用4臺四路服務器、6臺八路服務器、120 T主存儲、80 T備份、20 T同城異地容災構(gòu)建了一個規(guī)模較大的vSphere云計算平臺,為學校相關(guān)部門提供各種應用服務.現(xiàn)在已經(jīng)遷移和新部署了學校主網(wǎng)站、一卡通、各學院網(wǎng)站、檔案管理系統(tǒng)、選課系統(tǒng)、科研系統(tǒng)等.經(jīng)過使用測試,服務器占有率平常僅為7%~8%,高峰時均超過60%.為了充分使用云計算平臺,使資源利用最大化,本文利用該云計算平臺構(gòu)建了RAID虛擬實驗平臺應用于教學.
RAID是為了獲得更加安全的數(shù)據(jù)使用效果,更快的I/O速度,更大的存儲容量而產(chǎn)生的解決方案.RAID構(gòu)建包括兩種方案:由RAID控制器實現(xiàn)的硬RAID方案和由應用程序創(chuàng)建的軟RAID方案.在用軟件實現(xiàn)RAID時,可由操作系統(tǒng)提供數(shù)據(jù)冗余機制,利用Windows Server 2008操作系統(tǒng)內(nèi)嵌的軟RAID 0、RAID 1、RAID 5來完成RAID實驗[2].下面對這3種RAID的工作原理進行介紹.
(1)RAID 0工作原理:系統(tǒng)向2個磁盤組成的邏輯硬盤發(fā)出的I/O數(shù)據(jù)請求被轉(zhuǎn)化為2項操作,其中的每一項操作都對應于1塊物理硬盤.通過建立RAID 0,原先順序的數(shù)據(jù)請求被分散到所有的2塊硬盤中同時執(zhí)行.從理論上講,2塊硬盤的并行操作使同一時間內(nèi)磁盤讀寫速度提升了2倍.
RAID 0的缺點是不提供數(shù)據(jù)冗余,因此一旦用戶數(shù)據(jù)損壞,損壞的數(shù)據(jù)將無法得到恢復,其中任一塊硬盤出現(xiàn)問題都會導致整個數(shù)據(jù)的故障.
(2)RAID 1工作原理:系統(tǒng)向2個磁盤組成的邏輯硬盤發(fā)出的I/O數(shù)據(jù)請求被轉(zhuǎn)化為2項操作,其中的每一項操作都對應于1塊物理硬盤.通過建立RAID 1,原先順序的數(shù)據(jù)請求被分散到所有的2塊硬盤中同時執(zhí)行.從理論上講,2塊硬盤的并行寫操作并沒有提高寫入數(shù)據(jù)的速度,而讀取數(shù)據(jù)時由于同時從2塊硬盤中搜索并輸出結(jié)果,讀操作速度提升了2倍.
RAID 1的優(yōu)點是有冗余備份盤,數(shù)據(jù)安全性高,讀操作性能表現(xiàn)優(yōu)異.其缺點是物理硬盤容量的有效使用率低,寫性能表現(xiàn)一般.
(3)RAID 5工作原理:至少使用3塊硬盤組建RAID5磁盤陣列,當有數(shù)據(jù)寫入硬盤的時候,數(shù)據(jù)寫入會根據(jù)算法分成3部分,然后寫入這3塊硬盤,寫入的同時還會在這3塊硬盤上寫入校驗信息.當讀取寫入的數(shù)據(jù)的時候會分別從3塊硬盤上讀取數(shù)據(jù)內(nèi)容,再通過檢驗信息進行校驗.當其中有1塊硬盤出現(xiàn)損壞的時候,通過另外2塊硬盤上存儲的數(shù)據(jù)可以計算出第3塊硬盤的數(shù)據(jù)內(nèi)容.也就是說RAID 5存儲方式只允許有1塊硬盤出現(xiàn)故障,出現(xiàn)故障時需要盡快更換.當更換故障硬盤后,在故障期間寫入的數(shù)據(jù)會進行重新校驗.
RAID 5的優(yōu)點是可以在各磁盤并行執(zhí)行不同的讀寫操作,讀寫性能高.具有數(shù)據(jù)冗余容錯能力,數(shù)據(jù)安全性高.其缺點是寫入數(shù)據(jù)時因需要進行校驗數(shù)據(jù)生成的邏輯運算,增加了寫數(shù)據(jù)時間消耗.
RAID 作為現(xiàn)代數(shù)據(jù)中心的重要組成部分,在部署、生產(chǎn)和維護等實際工作中,如何根據(jù)實際應用系統(tǒng)的要求,合理配置RAID陣列是服務器能否提供優(yōu)質(zhì)服務的重要前提.因此,在VMware vSphere云計算平臺中進行RAID配置、測試和數(shù)據(jù)修復等重要技能的實踐,對全面掌握RAID技術(shù)有現(xiàn)實意義.
(1)掌握在Windows Server 2008操作系統(tǒng)下RAID 0、1、5的配置;
(2)完成RAID讀寫性能及容錯能力測試,理解RAID 0、1、5的工作特點;
(3)掌握RAID 0、1、5的數(shù)據(jù)修復技術(shù).
硬件:兼容VMware ESXi 5.1服務器1臺;LAN(Local Area Network,局域網(wǎng))網(wǎng)絡環(huán)境;PC(Personal Computer,個人計算機)終端1臺.
軟件:全套VMware vSphere 5.1安裝程序;服務器端Windows Server 2008操作系統(tǒng);終端機Windows 7操作系統(tǒng);硬盤讀寫性能測試工具DiskMark 1.0.
在構(gòu)建好的實驗環(huán)境中,遠程連接到Windows Server 2008實驗VM配置RAID 0、1、5,完成RAID相關(guān)實驗環(huán)節(jié).
3.3.1 RAID 0、1、5配置
(1)添加虛擬硬盤
根據(jù)前面RAID工作原理,完成RAID 0實驗至少需2塊硬盤,完成RAID 1實驗至少需2塊硬盤,完成RAID 5實驗至少需3塊硬盤.這樣,在同一臺VM中完成RAID 0、1、5配置實驗,需要在實驗VM中添加3塊SCSI(Small Computer System Interface,小型計算機系統(tǒng)接口)硬盤,每塊容量設(shè)置10 GB.
(2)動態(tài)磁盤轉(zhuǎn)換
選擇“開始|管理工具|計算機管理”命令,打開“計算機管理”窗口,單擊左側(cè)窗格中的“磁盤管理”,在右側(cè)窗格中顯示計算機的磁盤信息.用鼠標右鍵單擊待轉(zhuǎn)換的“基本磁盤1”,在彈出的快捷菜單中選擇“轉(zhuǎn)換到動態(tài)磁盤”命令.彈出“轉(zhuǎn)換為動態(tài)磁盤”對話框,選中欲轉(zhuǎn)換的“基本磁盤2”和“基本磁盤3”,然后單擊“確定”按鈕,完成轉(zhuǎn)換[3].
(3)RAID 0配置
RAID 0在Windows Server 2008操作系統(tǒng)中稱為帶區(qū)卷.在“磁盤管理器”中,右擊“動態(tài)磁盤1”打開“新建帶區(qū)卷”向?qū)?單擊“下一步”,打開“選擇磁盤”對話框,選擇創(chuàng)建帶區(qū)卷的“動態(tài)磁盤2”和“動態(tài)磁盤3”,并指定“選擇空間量”大小為1 024 MB,然后按照向?qū)崾静僮魍瓿蓭^(qū)卷的創(chuàng)建.
(4)RAID 1配置
RAID 1配置,在Windows Server 2008操作系統(tǒng)中稱為鏡像卷.在“磁盤管理器”中,右擊“動態(tài)磁盤1”打開“新建鏡像卷”向?qū)?單擊“下一步”,打開“選擇磁盤”對話框,選擇創(chuàng)建鏡像卷的“動態(tài)磁盤2”,并指定“選擇空間量”大小為1 024 MB,然后按照向?qū)崾静僮魍瓿社R像卷的創(chuàng)建.
(5)RAID 5配置
在“磁盤管理器”中,右擊“動態(tài)磁盤1”打開“新建RAID-5卷”向?qū)?單擊“下一步”,打開“選擇磁盤”對話框,選擇創(chuàng)建RAID-5卷的“動態(tài)磁盤2”和“動態(tài)磁盤3”,并指定“選擇空間量”大小為1 024 MB,然后按照向?qū)崾静僮魍瓿蒖AID-5卷的創(chuàng)建.
3種RAID模式配置完成后,結(jié)果如圖1所示.
圖1 RAID 0、1、5配置完成結(jié)果
3.3.2 性能與容錯能力測試
(1)基本讀寫測試
分別在帶區(qū)卷、鏡像卷和RAID-5卷中存入數(shù)據(jù)(文件),測試能不能寫入和讀取,可以成功進行文件讀寫操作.
(2)讀寫性能對比測試
啟動DiskMark,分別設(shè)置Set Size、Rounds、Run參數(shù)為:1 024*16、1 280、400,Disk Drive參數(shù)分別選擇待測的硬盤驅(qū)動器.這樣,相當于有1個800 MB大小的文件對所選擇硬盤進行寫入和讀取操作.點擊“Start”按鈕開始進行測試,直到完成.記錄帶區(qū)卷、鏡像卷和RAID-5卷模式讀寫性能數(shù)據(jù),形成表1.
表1 帶區(qū)卷、鏡像卷和RAID-5卷讀寫性能對比
從表1可以看出,讀性能,RAID 0最高,其次是RAID 1,RAID 5最慢;而寫性能,RAID 0最高,其次是RAID 1,RAID 5因要進行校驗數(shù)據(jù)生成的邏輯運算,也是最慢.測試結(jié)果和工作原理一致,但在實際工作中,選擇RAID級別要考慮3個主要因素:可用性(數(shù)據(jù)冗余)、性能和成本,應根據(jù)具體的使用情況選擇合適的RAID模式.[4]
(3)容錯能力測試
如圖1,磁盤2承擔了3種RAID模式,將其在VM中禁用,相當于磁盤2損壞了,查看帶區(qū)卷、鏡像卷和RAID-5卷中的數(shù)據(jù)是否還能使用.帶區(qū)卷不能訪問,連盤符都看不到,而鏡像卷和RAID-5因有容錯能力,測試文件能正確讀寫,測試結(jié)果和原理相符.
3.3.3 RAID數(shù)據(jù)修復
(1)RAID 0數(shù)據(jù)修復
RAID 0不存在數(shù)據(jù)冗余和校驗功能,在RAID 0陣列中,任意1塊成員硬盤的損壞,都可能造成所有數(shù)據(jù)全部丟失.數(shù)據(jù)修復只能重建RAID 0,并從備份盤或磁帶上恢復數(shù)據(jù)[5].
(2)RAID 1數(shù)據(jù)修復
RAID 1的數(shù)據(jù)是鏡像存儲,被存儲的數(shù)據(jù)同時寫入相應的鏡像磁盤,一個磁盤損壞,另一個磁盤的數(shù)據(jù)依然完整.
RAID 1數(shù)據(jù)修復,在“磁盤管理器”中,選擇“RAID 1”,右擊打開“刪除鏡像”向?qū)?,選擇標有“丟失”標記的磁盤,完成后“關(guān)機”.添加“新磁盤”,“開機”完成新磁盤的“動態(tài)磁盤”.再次右擊“動態(tài)磁盤 1”,選擇“添加鏡像”,選擇新添加的磁盤,重新同步結(jié)束后完成RAID 1的修復.
(3)RAID 5數(shù)據(jù)修復
RAID 5在寫入數(shù)據(jù)的同時也寫入了奇偶校驗信息,當RAID 5中任意1塊磁盤損壞,系統(tǒng)能根據(jù)其它盤中的校驗信息計算出丟失的數(shù)據(jù).
RAID 5數(shù)據(jù)修復,添加“新磁盤”,“開機”完成新磁盤的“RAID 5”.右擊“動態(tài)磁盤 1”,選擇“修復卷”,選擇新添加的磁盤,重新同步結(jié)束后完成RAID 5的修復[6].
在成功構(gòu)建基于VMware vSphere云計算平臺的RAID虛擬實驗環(huán)境基礎(chǔ)上,完成了RAID實驗中要求的RAID 0、1、5的配置,使用硬盤讀寫性能測試工具DiskMark對RAID 0、1、5的讀寫性能進行了測試比較,驗證了RAID 0、1、5在單磁盤故障時的容錯能力,并對RAID 1、5進行了數(shù)據(jù)修復操作,實驗結(jié)果和工作原理相符.為數(shù)據(jù)存儲類實驗提供了一種確實可行的有效方法,它不但可以降低實驗成本、節(jié)省實驗設(shè)備投資,還極大地激發(fā)了學生的學習興趣和實驗積極性,提升了學生的實踐技能.
參 考 文 獻:
[1] 周翔鷹.基于VMware構(gòu)建虛擬計算機網(wǎng)絡實驗[J].實驗室研究與探索,2006,25(7):809-212.
[2] JIMMY PERSSON,GUSTAV EVERTSSON.RAID SYSTEMS[EB/OL].http://www.guzzzt.com/files/coding/raid.pdf.
[3] 李馥娟.虛擬機技術(shù)在復雜網(wǎng)絡實驗中的應用[J].實驗技術(shù)與管理,2009.35(6):46-48.
[4] 孫麗麗,王偉峰,丁鵬,等.網(wǎng)絡存儲與虛擬化技術(shù)[M].北京:北京航空航天大學出版社,2013.
[5] 蔡平.磁盤陣列的數(shù)據(jù)安全隱患與數(shù)據(jù)修復[J].信息網(wǎng)絡安全,2008,9(2):43-46.
[6] 褚建立.企業(yè)級網(wǎng)絡服務器的容錯技術(shù)及實現(xiàn)方法[J].微型機與應用,2009,19(7):11-13.