LVM 快照作為備份策略
xen domU 的定期 LVM 快照作為備份策略的可行性如何?優點,缺點,有什麼陷阱嗎?
對我來說,這似乎是快速、無腦恢復的完美解決方案。任何調查都可以在 domU 成功執行而不會中斷的情況下對損壞的邏輯捲進行。
編輯:
在進行完整系統備份時,這就是我現在所處的位置。
- domU盤的lvm快照
- 大小等於快照大小的新邏輯卷。
- dd if=/dev/snapshot of=/dev/new_lv
- 使用 lvremove 處理快照
- 使用 kpartx/mount/ls 進行可選驗證
現在我需要自動化這個。
LVM 快照旨在擷取處於凍結狀態的文件系統。 它們本身並不意味著成為備份。但是,它們對於獲得一致的備份圖像很有用,因為凍結的圖像在備份過程中不能也不會改變。 因此,雖然您不會直接使用它們來進行長期備份,但它們在您決定使用的任何備份過程中都具有很大的價值。
有幾個步驟可以實現快照。首先是必須分配一個新的邏輯卷。此卷的目的是提供一個記錄文件系統增量(更改)的區域。這允許原始卷繼續執行,而不會中斷任何現有的讀/寫訪問。這樣做的缺點是快照區域的大小是有限的,這意味著在寫入繁忙的系統上,它可以很快填滿。對於具有大量寫入活動的捲,您將需要增加快照的大小以留出足夠的空間來記錄所有更改。如果您的快照溢出(填滿),兩個快照都將停止並被標記為不可用。如果發生這種情況,您將需要釋放您的快照,以便使原始卷重新聯機。發布完成後,您
發生的第二件事是 LVM 現在“交換”了相關卷的真正用途。您會認為新分配的快照將是查找文件系統任何更改的地方,畢竟,這是所有寫入的地方,對吧?不,是相反的。文件系統被掛載到 LVM 卷名,因此從系統的其餘部分換出名稱將是一個禁忌(因為快照使用**不同的名稱)。所以這裡的解決方案很簡單:當您訪問原始卷名時,它將繼續引用您對其進行快照的捲的實時(讀/寫)版本。您創建的快照卷將引用凍結您要備份的捲的(只讀)版本。一開始有點混亂,但它會有意義。
所有這一切都在不到 2 秒的時間內發生。系統的其餘部分甚至沒有註意到。當然,除非您沒有在快照溢出之前釋放它……
在某些時候,您會想要釋放快照以回收它佔用的空間。釋放完成後,快照卷將釋放回捲中,而原始卷仍然存在。
我不建議將其作為長期備份策略。您仍然在可能發生故障的同一物理驅動器上託管數據,從發生故障的驅動器恢復文件系統根本不是備份。
所以,簡而言之:
- 快照有助於備份
- 快照本身並不是一種備份形式
- 快照不會永遠存在
- 完整的快照不是一件好事
- 快照需要在某個時候發布
- LVM 是您的朋友,如果您明智地使用它。