1. 程式人生 > >意外斷電造成RAID 5陣列卡數據故障的恢復方法

意外斷電造成RAID 5陣列卡數據故障的恢復方法

img e430c 保持 操作方法 訪問 重啟 erp raid卡 raid 5

由於技術的不斷進步,不同型號的服務器出現RAID 5故障後,處理方法也不同。
現在大型應用程序的網絡拓樸結構,一般都采用C/S結構或B/S結構,至少需要一臺裝有大型數據庫的服務器安放於中心機房。基於對服務器安全性與可靠性的考慮,通常會對服務器的磁盤采用磁盤陣列RAID(Redundant Array of Inexpensive Disk)進行磁盤冗余備份。其中RAID 5陣列級別為無獨立校驗磁盤的奇偶校驗磁盤陣列,采用數據分塊和獨立存取技術,能在同一磁盤上並行處理多個訪問請求,同時允許陣列中的任何一個硬盤出現故障。
實際應用中,由於某些不可避免的客觀原因,可能會造成一些陣列故障。最常出現的狀況就是硬盤自行脫機,聯機狀態顯示為DDD(Defunct Disk Drive,無效磁盤驅動器),硬盤出現物理故障或邏輯故障。如果是物理故障,只有進行硬盤更換;如果是邏輯故障,可以通過有針對性的技術修復,恢復硬盤的在線狀態,繼續保持其原始陣列中的硬盤數據條帶化分布狀態,延續數據存儲體系的一致性。
但是,對HP的一些老服務器(如HP LH6000)數據的恢復與新服務器(如HP ProLian系列服務器)的數據恢復是不同的。所以不同的服務器對RAID 5故障的處理也是不同的。筆者曾接觸過兩臺服務器因意外斷電而造成的RAID 5陣列卡數據故障,由於采用了不同的策略而解決了問題。

故障修復
一臺是在2000年購買的HP LH6000的服務器,4塊18GB的硬盤做成RAID 5磁盤陣列,其陣列卡是NetRaid;另一臺是2006年購買的HP ProLian 文明用語370服務器,4塊146GB的硬盤做成RAID 5磁盤陣列,其陣列卡是Smart Array 642並帶有熱備份硬盤(Hot Spare)。兩者操作系統都為Window 2000,數據庫是Server 2000。

HP LH6000的故障如下: 一塊硬盤紅燈閃亮,機器還在正常運行,但沒有多久,系統就不能正常運行,這時才發現另一塊硬盤的紅燈也在閃亮。
技術分享圖片
解決辦法如下:
1.啟動服務器,自檢至陣列時按Ctrl+M進入NetRaid管理程序。查看陣列信息,發現硬盤狀態為Failed,運用修改配置將一硬盤強行設置成OnLine。重新啟動服務器,在進入系統前的硬件自檢時無效,啟動失敗。
2.啟動服務器,自檢至陣列時按Ctrl+M進入NetRaid管理程序。選擇磁盤陣列,將原來OnLine掛起來的硬盤手工Fail掉,然後再把另一塊Failed的硬盤手工設置成OnLine,重新啟動服務器就可以進入系統了。
3.查看系統及數據庫都運行正常後,再進陣列配置工具把Failed的硬盤手工設置成Rebuild,100%完成重建後再重啟服務器,所有的陣列及系統都恢復原狀了。

筆者所在單位另一臺運行ERP系統的服務器(HP ProLiant 文明用語370),由4塊146GB熱插拔硬盤通過RAID卡(Smart array陣列卡)配置成一臺具有RAID 5級的磁盤陣列。其中一塊硬盤在運行過程中突然出現故障。服務器RAID 5自動啟用熱備份硬盤(Hot Spare),對損壞硬盤進行邏輯替代。整個硬盤的數據訪問任務仍然完整地運行在原來的讀寫進程序列中,應用程序和數據庫沒有發生影響。
通過HP自帶的ACU工具查看硬盤狀態進行檢查,發現紅燈示警的硬盤處於脫機狀態。如果HP ProLiant服務器中的Raid 5有兩塊硬盤出現亮紅燈時,表明系統已經崩潰,數據庫也就不能訪問,但系統不會自動關機。當第二塊硬盤亮紅燈後,用常規的手段是不能恢復數據的,只有付費找專業的第三方數據恢復公司恢復數據。
技術分享圖片
因此,對惠普老型號HP LH6000系列服務器來說,陣列的設計方面與現在HP ProLiant系列服務器的陣列有很多不同。就操作方法看,HP LH6000服務器的陣列操作方法有很多可選項,包括陣列失敗後可以重新刪除陣列並重建等,初始化也是手工選擇的。但是HP ProLiant系列服務器陣列的初始化是在配置陣列後自動在後臺執行的,所以ProLiant系列服務器在陣列出錯後是不能重配陣列的。

意外斷電造成RAID 5陣列卡數據故障的恢復方法