網管小賈 / sysadm.cc
人們使用陣列 RAID 這種方式來确保服務器磁盤上的數據安全由來已久。
陣列通常指的是磁盤陣列,大意為具有冗餘能力的磁盤組合。
雖然陣列可以一定程序上保證了磁盤上的數據不丢失,但它還是有缺點的,其中最為嚴重的便是一旦陣列自身出現了問題,那真的是相當的麻煩。
一般來說,服務器陣列上的某塊硬盤故障損壞,那麼将它取下換上新的硬盤,陣列會自動識别并重建同步。
可是這一回,我們就要說一說二般的情況,就是它并不會自動重建,從而導緻陣列出現了不可描述的問題。
公元某年某月某日,某某找到我,說他們部門有不新不舊、不好不壞的那麼一台服務器放在某個神秘的角落裡很長時間,好像出了問題,最近速度慢得不行。
在此之前它一直在正常工作着,可不知道什麼時候,有人注意到它的硬盤居然閃着黃燈,明顯是報警有故障啊,之後速度就越來越慢,于是找到我讓我确認一下。
聽完這個小故事後我當即打了個冷顫,感覺不像天災更多的是人禍,但好奇心驅使我想去看看怎麼回事。
來到光線昏暗的廠房内,在穿過張牙舞爪、奇形怪狀的一排排機器後,我們步入了一座倉庫。
又七拐八繞轉過了堆滿雜亂物品的貨架,我們的腳步停留在了一個陰暗的角落。
這裡隻有一盞并不怎麼亮堂的小燈,在光線不足的情況下,我一眼就瞥見了那詭異的硬盤指示燈,它們正幽幽地閃爍着,其中有一個是黃色的光。
我蹲下身子,大概的瞧了一眼這台落滿灰塵的服務器,初步判斷應該是磁盤陣列故障。
我環視了光線昏暗、擁擠不堪地四周,皺了皺眉頭示意他們還是将這台服務器拿到我的工作台處理。
很快我的工作台上出現了這台服務器,于是我開始和它打起了交道......
收集可用信息,以備不時之需與以往處理故障不同,這次我并不需要解剖屍體,但表面觀察還是要有的,于是我給它做了個簡單的清潔工作。
這是一台Dell塔式服務器,一共三塊硬盤,并按槽位順序排列着。
在斷電的情況下,我按順序分别取下它們,并對應地記錄下它們的型号和序列号。
OK,重新放回它們原有的位置,開機繼續觀察。
1、開機按 F2 進入系統設置程序 System Setup。2、在設備設定 Device Settings中選擇陣列卡一項。
很明顯這台服務器的陣列卡是 H330 的。
3、進入系統設置程序後,會看到主菜單。
一共有五項,分别是:
基本上所有的陣列操作都在這些菜單項中了。
為了進一步确定故障的具體情況,我們需要确認陣列的現狀,然後再進行下一步的操作。
我們選擇主菜單的第一項 配置管理 Configuration Management 。
4、進入配置管理後,我們再進入 查看磁盤群組屬性 View Disk Group Properties。
5、在磁盤群組屬性中,我們可以清楚地看到當前陣列是 Raid 1,容量約465GB左右,狀态是降級 Degraded的。
6、回到主菜單,進入 控制器管理 Controller Management,可以看到一些有用的信息,比如有三塊物理磁盤,而虛拟磁盤隻有一塊。
當前陣列有問題是沒跑了,但目前我們隻看到了它是 Raid 1 形式,至于這三塊硬盤中究竟是哪兩塊組合成 Raid 1 我們還無法确定,所以還需要再看看有沒有更多的信息以便我們在下一步操作、判斷和處理問題時需要用到。
7、我們再進一步查看下去,主要是我們需要确認這三塊硬盤具體到底哪一塊處于一個什麼樣的狀态,這樣好有針對性地去操作它。
還是回到主菜單,進入 虛拟磁盤管理 Virtual Disk Management 。
和前面看到的一樣,就一個 Raid 1 的陣列,狀态是降級狀态。
走過路過,不要錯過,我們進去瞧上一瞧。
哎,有一項 View Associated Physical Disks ,意思是查看相關物理磁盤,進去看看。
呃...畫面顯示當前的 Raid 1 陣列成員是兩塊硬盤,一塊在線,另一塊則是失敗狀态。
陣列有問題自然不用說,不過你要是再仔細一瞧,你就會發現,哎,為啥這兩塊硬盤不是按順序來的第一和第二塊,而是第一和第三塊呢?!
沒看到?你看那個編号, 00:01:00 和 00:01:02 ,很明顯是第一塊和第三塊嘛。
要是還不太确信,那麼将編号是 00:01:02 的這塊硬盤打上勾,點擊下方的 View Physical Disk Properties 來直接查看它的物理屬性信息。
這個時候,你可以在操作項中選擇 Blink 和 Unblink ,再點擊 Go 來測試哪一塊是你在看的當前硬盤。
Blink 和 Unblink 的意思分别是閃爍和停止閃爍,你可以用這個操作來定位實際服務器上的哪一塊硬盤。
當然,你也可以将硬盤的型号和序号對照,我們在開始之前是有記錄過的。
果不其然,就是按順序數下來的第三塊硬盤。
好了,到目前為止,再結合之前的種種情況,最終印證了當前的 Raid 1 陣列的确是有問題的。
那麼總結一下,當前陣列應該是隻有第一塊硬盤是正常工作着,其他兩塊處于失控狀态。
如何修複陣列好了,故障情況已經清楚了,接下來就是制定具體的修複方案。
首先,數據最重要,肯定是先備份數據,其中也應該将失效硬盤上的部分數據備份(第二塊和第三塊硬盤被他們當作正常硬盤放入了數據)。
其次,由于第一塊硬盤還算工作正常,所以不能輕易動它,應該将第二塊硬盤轉換為陣列成員,并與第一塊重建同步數據。
再次,為加固 Raid 1 的安全性,應該将第三塊硬盤轉換成熱備盤。
最後,确認陣列修複情況,并将數據恢複到陣列盤上。
實際操作說了這麼多,除去數據備份等準備工作外,我們來看看具體的修複當前陣列的操作步驟。
由于當前陣列成員是第一塊和第三塊(雖然它是失敗狀态),而第二塊硬盤成了遊蕩在外的落魄者,所以我們應該先将第三塊變成非陣列成員,然後再将第二塊硬盤正名,讓它回來做它該做工作。
一、将第三塊硬盤下線1、主菜單中選擇 物理磁盤管理 Physical Disk Management ,選擇第三塊(編号 00:01:02 )磁盤。
2、選擇 強制離線 操作,将第三塊硬盤強制下線。
3、看清提示,确認 Confirm 處打勾後點擊 Yes 。
4、操作完成,點擊 OK 返回。
二、将第二塊硬盤轉換成陣列成員
1、主菜單中選擇 物理磁盤管理 Physical Disk Management ,選擇第二塊(編号 00:01:01 )磁盤。
2、操作選擇轉換為陣列兼容 Convert to RAID Capable ,然後點擊 Go 。
3、操作完成,點擊 OK 返回。
4、主菜單進入 虛拟磁盤管理 Virtual Disk Management,并選擇當前陣列後,選擇查看相關磁盤 View Associated Physical Disks 一項。
5、仔細确認是第二塊硬盤無誤後,在操作項中選擇重建 Rebuild ,再點擊 Go 。
6、陣列開始重建同步了,這時要注意千萬别點擊停止或暫停,最好要等它完成。
雖然重建很花時間(數小時至數十小時不等),但隻要你不去停止它,它是會自動進行的,也就是說,隻要不停電,你其實還是可以繼續做其他的事情的。
三、将第三塊硬盤轉換為熱備盤
主菜單中選擇 物理磁盤管理 Physical Disk Management ,選擇第三塊(編号 00:01:02 )磁盤。
之後操作項選擇設定為全局熱備盤 Assign Global Hot Spare ,然後點擊 Go 。
因為熱備盤不需要同步數據,所以很快就完成了。
至此,基本操作完成。
最後結語此次陣列故障我猜測應該是之前曾經有硬盤損壞,原有第三塊熱備盤自動頂替第二塊成員盤重建數據。
但由于操作不當導緻陣列恢複失敗,之後又由于使用者也不懂所以導緻第二塊硬盤也無法切換回去,就這樣被使用者胡亂寫入了數據當成了普通硬盤使用。
陣列的出現是為了提高數據的安全性,然而現實中陣列一旦出現問題或故障,其操作很容易産生更大的問題甚至是災難性後果。
基于陣列故障後的修複也會有一定的破壞性和風險性,所以強烈建議小夥伴們在平時務必做好數據的備份工作。
在此次修複過程中,最大的困難源于硬盤順序的确認與重建所需大量時間的等待,所以需要我們十分地仔細和耐心。
最後這台服務器修好後又被迫再次回到了那個陰暗的角落,我是建議他們給服務器提供好一點的環境,也好減少或避免故障的發生。
最終你懂的,我等人微言輕,他們将我的話當屁用空氣稀釋後就再無任何動靜。
當然我也沒有因此較真,因為我很小的時候就懂得地球并非宇宙中心的道理。
好了,不要有什麼怨言,努力工作、快樂生活,如果本文對你有所啟發和幫助,還請小夥伴們積極點贊分享,我們下期再見吧!
網管小賈 / sysadm.cc
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!