xen server常見故障:
1、sr無法識別,所有虛擬磁盤(vdi)丟失。
2、sr中的虛擬磁盤(vdi)訪問時報錯。
3、虛擬磁盤(vdi)刪除或丟失。
4、快照(snapshot)刪除或丟失。
5、sr初始化。
6、sr所在的LVM結構損壞。
7、sr所屬的PV分區表損壞。
8、其他故障。
xen server故障分析:
上述故障是用戶界面層的常見故障表現,解決這些故障問題首先要明白xen server sr層的結構組成。
xen server sr存儲庫的結構組成多數基于linux lvm,sr中的vdi相當于lvm中的lv,而構建lvm則可以基于傳統MBR的分區表或GPT的分區表來管理。舉個例子說,如果有一塊1TB的單硬盤,假設為/dev/sdb,想要初始化為SR,通常是1T的PV先進行分區(MBR或GPT,當然也可以不分),分好區后,
再將/dev/sdb1(假設要處理第一個分區)創建成LVM卷,然后再創建LV,這些LV就是VDI。
xen server會備份這些LVM信息并存放在/etc/lvm下,名稱如VG_XenStorage-151befd1-2224-5e06-914e-f15243f649d7_00103.vg,內容是標準的LVM XML信息格式描述。
上述的就是SR存儲庫的幾乎所有結構信息,所有種類的損壞幾乎都是因為上述信息的不完整所導致的。
SR存儲庫結構信息的不同損壞組合衍生出不同的解決方案。
xen server常見故障解決方案:
方案一、PV分區表損壞(適用于上述xen server常見故障的1、7):
PV分區表損壞其實與SR沒關系,只是影響到SR的訪問,其修復過程與普通的分區表修復相同,即修正MBR分區表或GPT分區表。
方案二、LVM結構損壞(適用于上述xen server常見故障的1、6):
LVM結構損壞大多數情況下就是LVM XML信息區的損壞,可考慮使用xen server的LVM信息備份進行恢復。
方案三、LVM結構損壞,同時備份信息也損壞(適用于上述xen server常見故障的1、6):
LVM結構及其備份信息損壞導致所有LV的片段索引信息全部丟失,這種情況下主要工作就是找回每個VDI的LV EXTENTS信息。XEN的VDI是基于Connectix和微軟聯合開發的VHD格式,通常采用精簡增長模式(如同ESX VMDK的精簡模式),也就是說vdi隨著使用的增長而增長,并不是分配多少占用多少。
這種模式的好處是可以節約空間,壞處就是分配不可能太連續,總會同時有幾個vdi交互申請空間。要想恢復這些片斷(碎片信息),上層可參考的信息是非常有限的。多數情況下只能按照VHD格式內部的相關性,從VDI的頭部開始,通過一些可前后匹配的信息,按LV PE的偏移,不斷對extent碎片結構進行糾正。
這個過程如果人工進行操作不僅工作量大而且繁瑣。北亞數據恢復工程師專門開發了對vhd格式進行從前向后偏移校驗的程序來進行匹配。獲取到每個VDI的碎片信息后,可通過碎片信息修正LVM信息或直接導出成VHD文件。
方案四、vdi內部結構損壞(適用于上述xen server所有可能的故障):
vdi內部結構的損壞等同于vhd格式磁盤的修復。對于一個vhd虛擬磁盤而言,每一個轉化后的物理塊都由索引表和塊內容組成,如果這兩部分信息都可以找到,這個位置的塊即可修復。所有可修復的塊加上無法修復的塊組成的一個VHD就像一塊壞道盤,這時候就要看內部文件系統的結構破壞情況了。
小結:上述4種解決方案的不同組合是針對所有xen server sr故障的解決方案。例如,vdi的刪除就是要先看是否有LVM備份,如果有,按備份恢復;如果沒有,按vdi內部結構進行復雜組合。
審核編輯 黃昊宇
-
數據恢復
+關注
關注
10文章
581瀏覽量
17524
發布評論請先 登錄
相關推薦
評論