服務(wù)器存儲數(shù)據(jù)恢復(fù)環(huán)境:
ZFS Storage 7320存儲陣列中有32塊硬盤。32塊硬盤分為4組,每組8塊硬盤,共組建了3組RAIDZ,每組raid都配置了熱備盤。
服務(wù)器存儲故障:
服務(wù)器存儲運(yùn)行過程中突然崩潰,排除人為誤操作、斷電、進(jìn)水和其他機(jī)房不穩(wěn)定因素。管理員重啟服務(wù)器存儲,系統(tǒng)無法進(jìn)入,需要恢復(fù)服務(wù)器存儲中的數(shù)據(jù)。
服務(wù)器存儲數(shù)據(jù)恢復(fù)過程:
1、將故障服務(wù)器存儲中所有硬盤標(biāo)記后取出,以只讀方式進(jìn)行扇區(qū)級完整鏡像,鏡像完成后將所有磁盤按照原樣還原到原存儲中,后續(xù)的數(shù)據(jù)分析和數(shù)據(jù)恢復(fù)操作都基于鏡像文件進(jìn)行,避免對原始磁盤數(shù)據(jù)造成二次破壞。
2、基于鏡像文件分析所有硬盤中的底層數(shù)據(jù),發(fā)現(xiàn)服務(wù)器存儲中的熱備盤全部啟用,上層采用ZFS文件系統(tǒng)。
Tips:
在ZFS文件系統(tǒng)中,存儲池被稱為ZPOOL。ZPOOL可以有各種類別的子設(shè)備:塊設(shè)備、文件、磁盤等等。本案例中ZPOOL的子設(shè)備是三組RAIDZ作為子設(shè)備。
經(jīng)過對底層數(shù)據(jù)的分析發(fā)現(xiàn),三組RAIDZ中的兩組RAIDZ啟用的熱備盤的個數(shù)分別為1和3。啟用熱備盤后,第一組RAIDZ中又有一塊盤離線,第二組RAIDZ中則又有兩塊硬盤離線。
根據(jù)上述分析結(jié)果模擬故障現(xiàn)場:三組RAIDZ中的兩組RAIDZ出現(xiàn)硬盤離線的情況,熱備盤自動上線替換離線盤。在熱備盤無冗余的情況下第一組RAIDZ中又有一塊盤離線,第二組RAIDZ中則有兩塊盤離線,ZPOOL進(jìn)入高負(fù)荷狀態(tài)(每次讀取數(shù)據(jù)都需要校驗(yàn));當(dāng)?shù)诙MRAIDZ中出現(xiàn)第三塊離線盤的時候,該組RAIDZ崩潰,ZPOOL下線,服務(wù)器存儲崩潰。
3、ZFS管理的存儲池與常規(guī)存儲池不同。在ZFS文件系統(tǒng)下,ZFS管理所有磁盤。常規(guī)RAID在存儲數(shù)據(jù)時會按照特定的規(guī)則組建池,并不關(guān)心文件在子設(shè)備上的位置。在ZFS下,存儲數(shù)據(jù)時會為每次寫入的數(shù)據(jù)分配適當(dāng)大小的空間,并計(jì)算出指向子設(shè)備的數(shù)據(jù)指針。所以RAIDZ缺盤時無法直接通過校驗(yàn)得到數(shù)據(jù),必須將整個ZPOOL作為一個整體進(jìn)行解析。
4、北亞企安數(shù)據(jù)恢復(fù)工程師手工截取事務(wù)塊數(shù)據(jù),并編寫程序獲取最大事務(wù)號入口。
獲取文件系統(tǒng)入口:
北亞企安數(shù)據(jù)恢復(fù)—ZFS文件系統(tǒng)數(shù)據(jù)恢復(fù)
5、獲取到文件系統(tǒng)入口后,北亞企安數(shù)據(jù)恢復(fù)工程師編寫數(shù)據(jù)指針解析程序進(jìn)行地址解析。
解析數(shù)據(jù)指針:
北亞企安數(shù)據(jù)恢復(fù)—ZFS文件系統(tǒng)數(shù)據(jù)恢復(fù)
6、獲取到文件系統(tǒng)入口點(diǎn)在各磁盤上的分布情況后,北亞企安數(shù)據(jù)恢復(fù)工程師開始手工截取并分析文件系統(tǒng)內(nèi)部結(jié)構(gòu)。入口點(diǎn)所在的磁盤組無缺失盤,可直接提取信息。根據(jù)ZFS文件系統(tǒng)的數(shù)據(jù)存儲結(jié)構(gòu)順利找到映射的LUN的名稱,進(jìn)而找到其節(jié)點(diǎn)。
7、經(jīng)過分析發(fā)現(xiàn)此存儲中的ZFS版本與開源版本有較大差別,無法使用之前開發(fā)的解析程序進(jìn)行解析,所以北亞企安數(shù)據(jù)恢復(fù)工程師重新編寫程序進(jìn)行解析。
北亞企安數(shù)據(jù)恢復(fù)—ZFS文件系統(tǒng)數(shù)據(jù)恢復(fù)
8、由于缺盤個數(shù)較多,每個IO流都需要通過校驗(yàn)得到,進(jìn)度極為緩慢。與用戶方溝通后得知此ZVOL卷映射到XenServer作為存儲設(shè)備,所需要的文件在一個vhd內(nèi)。提取ZVOL卷頭部信息,按照XenStore卷存儲結(jié)構(gòu)進(jìn)行分析,發(fā)現(xiàn)該vhd在整個卷的尾部。計(jì)算出其起始位置后從此位置開始提取數(shù)據(jù)。
9、Vhd提取完畢后,驗(yàn)證其內(nèi)部的壓縮包、圖片、視頻等文件,均可正常打開。
10、交由用戶方驗(yàn)證恢復(fù)出來的數(shù)據(jù)。經(jīng)過驗(yàn)證,發(fā)現(xiàn)恢復(fù)出來的文件數(shù)量與系統(tǒng)自動記錄的文件數(shù)量差不多,稍微有點(diǎn)出入。丟失的極少量文件應(yīng)該是因?yàn)檫@些文件是新生成的還未存儲到磁盤。隨機(jī)驗(yàn)證恢復(fù)出來的文件,全部可正常打開。用戶方認(rèn)可數(shù)據(jù)恢復(fù)結(jié)果。
審核編輯 黃宇
-
服務(wù)器
+關(guān)注
關(guān)注
12文章
9334瀏覽量
86133 -
RAID
+關(guān)注
關(guān)注
0文章
279瀏覽量
35187 -
數(shù)據(jù)恢復(fù)
+關(guān)注
關(guān)注
10文章
587瀏覽量
17662 -
zfs
+關(guān)注
關(guān)注
0文章
7瀏覽量
2637
發(fā)布評論請先 登錄
相關(guān)推薦
服務(wù)器數(shù)據(jù)恢復(fù)—Zfs文件系統(tǒng)服務(wù)器數(shù)據(jù)恢復(fù)案例
服務(wù)器數(shù)據(jù)恢復(fù)—如何讓ZFS文件系統(tǒng)數(shù)據(jù)“起死回生”?
![<b class='flag-5'>服務(wù)器</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—如何讓<b class='flag-5'>ZFS</b><b class='flag-5'>文件系統(tǒng)</b><b class='flag-5'>數(shù)據(jù)</b>“起死回生”?](https://file1.elecfans.com/web2/M00/A6/51/wKgaomUTz2qATYGwAAEAB2YAtgc824.png)
服務(wù)器數(shù)據(jù)恢復(fù)—raid5陣列+reiserfs文件系統(tǒng)數(shù)據(jù)恢復(fù)案例
服務(wù)器數(shù)據(jù)恢復(fù)—異常斷電導(dǎo)致linux系統(tǒng)無法啟動的數(shù)據(jù)恢復(fù)案例
服務(wù)器數(shù)據(jù)恢復(fù)—EXT3文件系統(tǒng)下誤刪除數(shù)據(jù)的恢復(fù)案例
![<b class='flag-5'>服務(wù)器</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—EXT3<b class='flag-5'>文件系統(tǒng)</b><b class='flag-5'>下</b>誤刪除<b class='flag-5'>數(shù)據(jù)</b>的<b class='flag-5'>恢復(fù)</b>案例](https://file.elecfans.com/web2/M00/6B/71/poYBAGMr1U6AOot4AAB4laMRdgw508.png)
服務(wù)器數(shù)據(jù)恢復(fù)—V7000存儲NTFS文件系統(tǒng)數(shù)據(jù)恢復(fù)案例
![<b class='flag-5'>服務(wù)器</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—V7000存儲NTFS<b class='flag-5'>文件系統(tǒng)</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例](https://file1.elecfans.com/web2/M00/8D/64/wKgaomS6HOGAa4cnAASobP8Fp0c848.png)
服務(wù)器數(shù)據(jù)恢復(fù)—xfs文件系統(tǒng)服務(wù)器數(shù)據(jù)恢復(fù)案例
服務(wù)器數(shù)據(jù)恢復(fù)—X3650服務(wù)器raid5磁盤陣列數(shù)據(jù)恢復(fù)案例
服務(wù)器數(shù)據(jù)恢復(fù)—CX4-480存儲中XFS文件系統(tǒng)分區(qū)丟失的數(shù)據(jù)恢復(fù)案例
![<b class='flag-5'>服務(wù)器</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—CX4-480存儲中XFS<b class='flag-5'>文件系統(tǒng)</b>分區(qū)丟失的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例](https://file1.elecfans.com/web2/M00/EB/2E/wKgZomZdZ5qAA2bbAAK5rtorE7c528.png)
服務(wù)器數(shù)據(jù)恢復(fù)—KVM虛擬機(jī)raw格式磁盤文件數(shù)據(jù)恢復(fù)案例
![<b class='flag-5'>服務(wù)器</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—KVM虛擬機(jī)raw格式磁盤<b class='flag-5'>文件數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例](https://file.elecfans.com/web2/M00/A3/D5/poYBAGRZ6kOAAPRJAANo3SqJ5yk832.png)
服務(wù)器數(shù)據(jù)恢復(fù)—xfs文件系統(tǒng)分區(qū)丟失的數(shù)據(jù)恢復(fù)案例
![<b class='flag-5'>服務(wù)器</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—xfs<b class='flag-5'>文件系統(tǒng)</b>分區(qū)丟失的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例](https://file1.elecfans.com/web2/M00/E6/D0/wKgaomZFeDaAL88ZAAC5c-NuGdw519.png)
服務(wù)器數(shù)據(jù)恢復(fù)—StorNext文件系統(tǒng)下raid5數(shù)據(jù)恢復(fù)案例
![<b class='flag-5'>服務(wù)器</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—StorNext<b class='flag-5'>文件系統(tǒng)</b><b class='flag-5'>下</b>raid5<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例](https://file.elecfans.com/web2/M00/9F/85/poYBAGQ83XqADsgNAAPisU_u_f0999.png)
服務(wù)器數(shù)據(jù)恢復(fù)—EMC存儲下xfs文件系統(tǒng)數(shù)據(jù)恢復(fù)案例
![<b class='flag-5'>服務(wù)器</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—EMC存儲<b class='flag-5'>下</b>xfs<b class='flag-5'>文件系統(tǒng)</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例](https://file.elecfans.com/web2/M00/9E/C6/pYYBAGQ02mmAW6coAAJ8OxzW2sA202.png)
評論