基於 Linux 的文件複製:文件級還是塊級?
我目前正在重新設計我們的備份解決方案,並希望獲得有關如何進行複制部分的一些資訊。我們有兩個站點,一個比另一個大得多,我們需要備份。我有兩台 Linux 伺服器,它們將通過 NFS/iSCSI/SMB 共享它們的捲(我還沒有完全決定要使用哪一個)。將儲存在這些卷上的文件很可能是 VMDK - 因此只是單個大文件 - 將包含使用 VMWare Data Recovery 或 Veeam 的備份(也尚未決定使用哪個)。
現在是棘手的部分。我想將這些 VMDK 複製到兩台伺服器。因此,伺服器 A 將擁有自己的 VMDK,而伺服器 B 將擁有自己的 VMDK。我應該使用 Rsync 之類的東西定期將文件本身複製到另一台伺服器,還是使用 DRBD+GFS2 之類的東西在塊級別更改時複製東西會更好,本質上給我一個主動/主動集群文件系統? 請記住,不會在兩個位置修改 VMDK。也就是說,伺服器 A 永遠不會修改主要位於伺服器 B 上的 VMDK,反之亦然
如果您需要更多資訊,請告訴我,並感謝您的任何意見!
我過去曾在幾個類似的系統上工作過(對於 VM 儲存複製,不少於!)。一般來說,我對 schedule-rsyncs 解決方案更滿意,因為我們發現 DRBD 設置很棘手而且有點脆弱,但你確實有缺點,如果 rsyncs 之間發生故障,你會失去更改。這些文件多久更改一次/備份必須多長時間以防萬一失敗?
DRBD 在塊設備不斷更新的意義上更好,這是一個很大的優勢,並允許我們更快地進行 VM 故障轉移。但是我們確實發現設置(以及如果出現問題時進行調試)更加困難。如果您需要這種冗餘,我通常會說使用 DRBD,如果您考慮這些更冷/不頻繁的備份,我會說使用 rsync。
(我們還嘗試了一些相當瘋狂的東西:iSCSI(實際上是 SRP)——從兩台不同的伺服器導出塊設備,並將軟體 RAID 應用於伺服器 #3 上的塊設備。但我們沒有保持足夠長的時間來測試它很多。)