EMC Isilon OneFS 資料恢復案例詳解

2021-09-21 21:30:26 字數 2085 閱讀 5041

【故障描述】

【資料備份】

因考慮到資料安全性,避免對資料造成二次破壞,需對所有硬碟進行全部備份。但是由於磁碟數量太多(單節點12塊盤,3個節點36塊盤),且單盤容量太大(單盤3tb,一共108tb),因此備份週期會較長。最終客戶決定,只對儲存中現有資料進行備份,並且由北亞備份一次,客戶再備份一次,以確保現有資料安全。

【資料分析】

備份完所有資料後,在isilon的web管理介面中將isilon正常關機。再將所有節點上的所有硬碟貼上標籤,並依次取出再放到北亞提供的資料恢復平台中,開始分析所有硬碟中的資料。

至此先簡單介紹一下isilon的儲存結構,isilon內部使用的是分布式檔案系統onefs。在isilon儲存集群中,每個節點都是乙個單一的onefs檔案系統,因此isilon支援橫向擴充套件,並且不會影響正在使用的資料。在儲存集群工作時,所有節點提供相同的功能,節點與節點之前沒有主備之分。當使用者往儲存集群中儲存檔案時,onefs層會將檔案分成128k的片段分別存到不同的節點中,而在節點層又會將128k的片段分成8k的小片段分別存到該節點的不同硬碟中。而使用者檔案的indoe資訊、目錄項及資料map則會分別儲存在所有節點中,這樣可以確保使用者不管從那個節點都可以訪問到所有資料。isilon在初始化時會讓使用者選擇相應的儲存冗餘模式,不同的冗餘模式所提供的資料安全級別也不一樣(預設3個節點採用n+2:1模式)。

由於客戶資料是被刪除了,因此不用過多考慮儲存的冗餘級別,重點需要分析檔案刪除後,檔案indoe及資料map是否發生變化。和客戶溝通後,刪除的虛擬磁碟檔案都在64g或以上,並且儲存中沒有其他型別的大檔案。編寫掃瞄所有檔案indoe的程式,將檔案大小符合64g或以上的indoe都掃瞄出來。再仔細分析掃瞄出來的indoe,發現indoe中記錄的資料map位置,其index指向的內容已不再是正常資料,並且所有節點上的indoe均是同樣的情況。再仔細分析inode,發現大檔案的資料map會有多層(樹結構),並且資料map中會記錄檔案的唯一id,因此可以嘗試找到檔案最底層的資料map。抱著僥倖心理對檔案最底層的資料map做遍歷跟蹤操作,發現最低層的資料map果然還在。

【資料恢復】

編寫程式,從檔案的inode中取出檔案的唯一id,然後對所有符合該id的資料map做聚合。並根據資料map中的vcn號做排序,發現每個檔案的前17088項資料map都不存在,也就意味著每個檔案的前17088項資料是真的沒辦法恢復了(心情一**落低谷)。

仔細換算了一下發現丟失的資料map項總共才包含不到1g的資料,而刪除的檔案全是虛擬機器的vmdk檔案,裡面都是ntfs的檔案系統,而ntfs檔案系統的mft基本都在3g的位置,也就是只需要在每個vmdk檔案的頭部手動偽造乙個mbr和dbr就可以解釋vmdk裡面的資料了(真不知到是巧合呢!還是巧合呢!)。趕緊編寫**,對掃瞄到的資料map做解釋,並根據vcn號的順序匯出資料,沒有map的情況保留為零。

經過不斷的測試,程式終於編好了,先導出乙個vmdk檔案來看看。結果令我大吃一驚,匯出的vmdk檔案比實際情況要小,並且vmdk中mft的位置也與自身描述不符。是程式的問題?還是資料map本身已損壞?手動隨機驗證了幾個mpa發現都能指向資料區,而程式解釋map的方式也都沒有問題。就在我百思不得其解的時候,我突然想到isilon這麼高階的儲存不可能沒有檔案稀疏吧!否則空間得浪費多少啊!立馬根據資料map驗證了一下,發現檔案果然是稀疏的。

【資料驗收】

將客戶所有重要的資料恢復完成後,由客戶方安排工程師對恢復的所有資料做完整性及準確性檢測,經過長達1天的驗證工作。資料最終確定完全沒有問題,資料恢復成功。

【資料恢復總結】

整個恢復過程耗時乙個月,雖然過程很曲折,但是結果很滿意。

Catalan數(卡特蘭數)

卡特蘭數 規定h 0 1,而h 1 1,h 2 2,h 3 5,h 4 14,h 5 42,h 6 132,h 7 429,h 8 1430,h 9 4862,h 10 16796,h 11 58786,h 12 208012,h 13 742900,h 14 2674440,h 15 969484...

卡特蘭數 Catalan數

卡特蘭數 規定h 0 1,而h 1 1,h 2 2,h 3 5,h 4 14,h 5 42,h 6 132,h 7 429,h 8 1430,h 9 4862,h 10 16796,h 11 58786,h 12 208012,h 13 742900,h 14 2674440,h 15 969484...

Catalan數(卡特蘭數)

2012 04 12 21 08 13 標籤 卡特蘭數 原始出處 作者資訊和本宣告。否則將追究法律責任。卡特蘭數 規定h 0 1,而h 1 1,h 2 2,h 3 5,h 4 14,h 5 42,h 6 132,h 7 429,h 8 1430,h 9 4862,h 10 16796,h 11 58...