VSAN存儲結構介紹及數據恢復方法概述

【什麼是VSAN?】

VSAN是一種以vSphere內核爲基礎進行開發、可擴展的分佈式存儲架構。VSAN通過在vSphere集羣主機當中安裝閃存和硬盤來構建VSAN存儲層,由VSAN進行控制和管理,形成一個供vSphere集羣使用的統一共享存儲層。
vSphere基礎架構中的存儲正在發生變化,傳統的基於LUN的存儲管理機制將存儲能力應用於數據存儲級別。底層存儲陣列不瞭解虛擬化,也不瞭解文件系統。VMware的下一代策略驅動存儲方式不再基於傳統的VMFS存儲卷,而是基於對象存儲系統模型,基於虛擬數據存儲或者分佈式數據存儲。
VSAN存儲結構介紹及數據恢復方法概述
【VSAN數據存儲分析】

VSAN數據存儲是一個對象存儲,以文件系統的形式呈現給vSphere主機,這個對象存儲服務會從啓用VSAN集羣中的每臺主機上加載卷。將他們展現爲單一的、在所有節點上可見的分佈式共享數據存儲,VSAN簡化了存儲配置,對於虛擬機來說,只有一個數據存儲,這個分佈式數據存儲來自VSAN集羣中每一臺vSphere主機上的存儲空間。
通過磁盤組進行配置,在單獨的存儲實體中存儲所有的虛擬機文件,這種數據存儲的方式相對來說已經很安全了,但是在出現閃存盤或者是容量盤出現故障的時候,數據會往其他的節點轉移,在轉移的時候過程中,也有可能出現其他的故障,北亞數據恢復的工程師就解決了一個VSAN存儲崩潰,虛擬機無法訪問的故障。
VSAN存儲結構介紹及數據恢復方法概述
【VSAN存儲崩潰案例分析】

出現故障是四臺dell的服務器組成的VSAN集羣,每臺服務器上兩個磁盤組,一個磁盤組是一個SSD硬盤帶5塊SAS硬盤,SSD做閃存,SAS做容量盤,其中一個節點上的一個磁盤組中的容量盤出現故障離線,並且VSAN進行數據重構遷移。
這個時候由於停電導致數據遷移沒有完成,在來電的時候,其中另外一個磁盤組中的容量盤也由兩塊故障離線了,導致整個數據存儲出現故障,VSAN的管理控制檯可以登陸,但是所有的虛擬機都無法訪問了。
【VSAN存儲數據恢復過程分析】
先把四個節點的所有硬盤都做個只讀的鏡像,包含SSD閃存盤和SAS容量盤,還有三塊因故障離線的硬盤,備份完成之後,把所有的原盤都還原到服務器上,開始對鏡像文件來進行分析底層數據存儲結構,來確認虛擬機所在硬盤的分佈信息。

因爲現有的虛擬化程序沒有針對VSAN的架構來恢復虛擬機的,北亞的工程師在分析底層數據存儲結構的時候,也在做相應的程序開發,來測試數據分佈信息的準確性。

單獨分析每個節點上的兩個磁盤組,看下磁盤組內的閃存硬盤和容量盤之間的對應關係,每塊硬盤都有一個唯一標識進行磁盤間的對應,根據硬盤的ID信息,判讀磁盤組裏面的硬盤ID信息。
1、 在每塊硬盤上獲取磁盤的UUID和磁盤組的UUID

2、 根據每個磁盤組中的容量盤的組件信息獲取此容量盤的組件信息

3、 根據組件信息中記錄的組件的MAP位置提取組件位圖。

4、 根據組件的位圖提取組件數據和緩存數據

5、 根據組件的描述信息獲取組件所屬對象及組件順序,並把組件合併成對象

6、 根據對象,提取數據。

【VSAN存儲數據恢復結果分析】

對象也可以看成一個卷,也可以理解成是一個邏輯卷,每個存在於數據存儲上的VSAN對象都是由多個組件構成,這些組件分佈於集羣主機上配置的磁盤組中,在恢復的過程中,組件的信息提取是關鍵的步驟,因爲組件是每個對象的重要組成部分,本次故障組件損壞的很少,恢復出來的虛擬機都能正常啓動,這次故障解決在分析組件位圖和磁盤對應關係用來比較長的時間,但是最後把所有的技術難題都解決了,恢復出來的虛擬機都正常啓動,圓滿解決了VSAN出現故障導致數據丟失的恢復。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章