将增量快照备份到另一个卷

将增量快照备份到另一个卷

我正在寻找一种方法来实现接近以下备份方案:

  1. 首先,将完整的图像复制到备份目标。
  2. 定期地(例如每晚),仅将自上次备份以来发生变化的块复制到备份目标。
  3. 理想情况下,应该能够从任何时间点挂载快照,或者有选择地删除(展平)一些快照。

可以使用 LVM (或其他方式) 实现吗?它需要跟踪自上次备份以来哪些块已变脏,我不确定 LVM 是否可以做到这一点...我宁愿避免始终在 LVM 快照上运行的永久性能成本。

答案1

新人来了,Attichttps://attic-backup.org/

几年来,我们一直使用 rdiff-backup 作为主要备份方法。它的功能非常强大,但在一年的时间里创建了数万/数十万个小型差异文件。大多数文件系统和磁盘都难以处理超过一百万个文件。备份我们 90GB 的基于 Maildir 的 IMAP 存储需要几个小时。我不得不不断减少我们保留的历史记录的周数/差异数。

相比之下,一旦我们切换到 Attic,每晚的备份只需 15-20 分钟。这意味着保留一年的增量备份以便您可以返回过去一年中的任何一天更加可行。

吸引我选择 Attic 的主要特点:

  • 它不会在目标服务器上创建数千个文件
  • 使用可变块大小进行重复数据删除
  • 具有内置压缩功能
  • 有效备份虚拟机映像文件
  • 通过 WAN 连接实现高效

使用了 6-9 个月后,我确信它和 rdiff-backup 一样稳定。我仍然使用可移动媒体对 Attic 目录进行多代复制,但每个可移动媒体都有 Attic 存储库的完整副本。

答案2

Rsync /快照是完成此类工作更好的工具,尤其是考虑到它们为您提供了一个“实时”快照目录,其中不一致最多仅限于某个文件,但它们无法破坏整个备份。此外,使用硬链接,您可以进行增量备份,而不会带来相关不便。

我在有数百万个文件和数十个快照的生产系统中使用了该解决方案,非常满意。

答案3

LVM 快照的替代方法是使用datto 块驱动程序(又名。达托布德)。

来自dattobd GitHub 页面

Datto 块驱动程序 (dattobd) 解决了上述问题,并为各种 Linux 内核带来了类似于 Windows 上的 VSS 的功能。Dattobd 是一个用于即时实时快照的开源 Linux 内核模块。Dattobd 可以加载到正在运行的 Linux 机器上(无需重新启动),并在原始卷上创建一个 COW 文件,该文件表示拍摄快照时的任何块设备。在第一次快照之后,驱动程序会跟踪块设备的增量更改,因此可以通过仅复制已更改的块来有效地更新现有备份。Dattobd 是一个真正的实时快照系统,可以让您的根卷保持运行和可用,而无需重新启动。

我试过了,它在 ext4 fs 上按预期工作。wiki 中还提供了一个工作示例(带有脚本)。

最后,请注意备份内置对使用 LVM 或 dattobd 在 Linux 上进行快照备份的支持。

相关内容