Virtualization

虛擬機高效異地遠端備份解決方案的建議

  • July 16, 2016

我正在尋找備份我目前的 6 個虛擬機(很快會增加到 20 個)的建議。目前我正在執行一個兩節點 proxmox 集群(這是一個使用 kvm 進行虛擬化的 debian 基礎,並帶有一個自定義的 Web 前端進行管理)。我有兩個幾乎相同的盒子,帶有 amd phenom II x4 和華碩主機板。每個都有 4 500 GB sata2 硬碟,1 個用於作業系統和其他數據用於 proxmox 安裝,3 個使用 mdadm+drbd+lvm 在兩台機器之間共享 1.5 TB 的儲存空間。我將所有虛擬機的 lvm 映像掛載到 kvm。我目前有能力從一台機器實時傳輸到另一台機器,通常在幾秒鐘內(在執行 win2008 和 m$ sql 伺服器的最大 vm 上大約需要 2 分鐘)。我正在使用 proxmox 的內置 vzdump 實用程序來拍攝 vm 的快照 s 並將它們儲存在網路上的外部硬碟驅動器上。然後我有 Jungledisk 服務(使用 rackspace)來同步 vzdump 文件夾以進行遠端異地備份。

這一切都很好而且很花哨,但它的可擴展性不是很好。一方面,備份本身每晚最多可能需要幾個小時。使用jungledisk 的塊級增量傳輸,同步僅將一小部分數據傳輸到異地,但這仍然需要至少半小時。

更好的解決方案當然是讓我立即獲取兩個時間點的差異(比如從早上 6 點到早上 7 點寫入的內容),壓縮它,然後將該差異文件發送到備份伺服器,該伺服器將立即傳輸到機架空間上的遠端儲存。我對 zfs 進行了一些研究,它具有發送/接收的能力。再加上 bzip 中的數據管道或其他東西似乎很完美。但是,似乎使用 zfs 實現 nexenta 伺服器本質上需要至少一或兩個專用儲存伺服器來為 proxmox 伺服器提供 iSCSI 塊卷(通過 zvol ???)。如果可能的話,我希望盡可能地減少設置(即沒有單獨的儲存伺服器)。

我還簡要閱讀了有關 zumastor 的資訊。看起來它也可以做我想做的事,但它似乎在 2008 年停止了開發。

那麼,zfs、zumastor 還是其他?

在您的情況下這可能是不可能的,所以我希望在這種情況下我不會被否決,但更改備份策略可能更有效。如果您備份特定數據而不是虛擬機快照,您的備份會執行得更快,並且更容易擷取更改。

根據您的虛擬機及其用途,您可以讓它們將數據備份到您現在每天儲存快照的位置(或任何適當的時間表),然後 JungleDisk 可以僅備份數據。這將更有效地傳輸更改的文件,並且備份所需的空間以及所需的時間將減少。此外,您仍然可以拍攝快照以進行保留,而且要少得多(例如每週)。

在這種情況下,您總是可以只啟動一個新的虛擬機並恢復數據,或者使用較舊的快照恢復虛擬機,然後使用數據備份恢復到最近的點。

如果我進行異地備份,我會選擇以下選項:

(a) 將 SCP 複製到遠端伺服器的 shell 腳本,這樣您可以添加一個自動執行創建備份的腳本的 cron 作業。此外,您可以使其在實際傳輸文件之前創建一個臨時存檔文件,從而通過在 gzip 壓縮時不傳輸來節省頻寬。

或者

(b) 安裝像 Webmin 這樣的伺服器管理工具,並讓它進行自動備份。我現在正在我的生產伺服器上唱歌,沒有任何問題,它完美無缺。我還建議使用 cloudmin(付費)來管理許多虛擬機,因為它提供了多合一的解決方案。

一些額外的連結:

http://www.debianhelp.co.uk/backup.htm

http://ubuntuforums.org/showthread.php?t=35087

希望對您有所幫助, RayQuang

引用自:https://serverfault.com/questions/196334