使用ubuntu备份10TB的解决scheme

我正在build立一个大约有10个2TB硬盘驱动器的备份服务器。 这台机器的目的仅仅是从另一台服务器备份大约3-10TB的数据。

什么是实现这种备份的最佳方式。 有版本历史将是很好的。 我想只是设置gitosis和有一个git回购。 另一台机器只是按照一定的时间间隔git commit和git push到这台服务器上。 但是我不确定git可以处理像这样的数据TB。 这些文件由90%的图像组成(jpeg,tiff等不会更改,所以这些都是小文件),10%是大数据库转储,每天都会更改。

最好的解决scheme是rsync到备份机器并使用LVM拍摄快照? 如何使用TimeVault? 我想不只有一个副本的备份,但在不同的时间间隔的多个版本。 任何有关这个问题的信息将是伟大的。

我把这个盒子设置成一个带有NextentaStor Community Edition (ZFS!)或OpenFiler的NAS。

除非你有计划把它用作别的东西,否则为什么还要用完整的发行版呢? 更less的事情要出错,因为它是专门build立一个较小的足迹; OpenFiler和NextentaStor都有其优点和缺点,但是对于纯粹的存储设备来说,要么是直接的Ubuntu,要么是更好的select。

使用git似乎不合适。 如果你真的喜欢这种方式,看一下git bup这是一个git扩展,聪明地将大型二进制文件存储在一个git仓库中。

也就是说,我推荐使用rsnapshot,rdiff-backup。

我肯定不会推荐LVM快照1 。

  • 写入性能会严重下降
  • 在这些卷上,快照会在很多分钟内(如果不是几个小时的话)导致启动时间( 这里 )
  • 当空间不足时,会有致命的陷阱
  • 而且最后一次检查像回滚一样还是一个遥远的承诺
  • 请注意,即使在您的实时文件系统中添加快照可能会非常棘手,因为依赖于guids的文件系统在fs头文件中是唯一的
  • 此外,除非使用iSCSI或DBRD(etc),否则您将与现场fs一起停留在同一主机上,从而使备份的用处变得不那么有用(甚至会降低性能)

对于这种情况,我更喜欢ZFS(发送,接收) 。 说实话,我认为zfs-fuse现在可能太慢了(但是testing!),但是zfsonlinux似乎很好,可能会给你很多工作。


1我刚刚回忆起我之前写过的关于这个主题的珍闻:

但是,我不能再计算使用快照时遇到的不同失败模式。 我已经停止使用它们 – 这只是危险的。

我现在唯一的例外是我自己的个人邮件服务器/networking服务器备份,在那里我会使用短暂的快照做一夜的备份,它总是等于源fs的大小, 在之后被删除。

记住最重要的方面:

  1. 如果你有一个大的(ish)fs有快照,写入性能会大大降低
  2. 如果你有一个大的(ish)fs有一个快照,启动时间将会延迟几十分钟,而磁盘将在导入卷组的过程中搅动和搅动。 没有消息将被显示。 如果root在lvm2上,这个效果尤其可怕。
  3. 如果你有一个快照,很容易用尽空间。 一旦空间用完,快照已损坏,无法修复。
  4. 快照现在不能被回滚/合并(参见http://kerneltrap.org/Linux/LVM_Snapshot_Merging )。 这意味着从快照恢复数据的唯一方法是实际上复制(rsync?)它。 危险危险:如果快照容量不小于源fs的大小,则不需要执行此操作; 如果你不这样做,你很快就会撞上砖墙,结果源fs和快照被破坏。 (我去过那儿!)

我强烈build议不要使用这个git。 当然,它可能会工作,但它是非常不理想的。

你可以rsync,LVM和快照,如果你想。 我喜欢的这种实例的备份方法是使用rnapshot或rdiff-backup 。 他们可以利用rsync为您提供的优化,同时提供一组增量备份。

Rsync的“–backup-dir =”选项可以消除每日快照的需要。 任何被更改的文件都会被放入一个备份文件夹,并可以从那里恢复。

我有一个夜间脚本,将数据从远程站点拖到一个中央备份中,备份目录是脚本化的,无论备份的date是什么时候,只要我的存储空间能够保存,每个文件的版本历史都会改变。

如果你想我可以发布脚本,这是非常丑陋的,具体到我们的需求寿,所以我不会指望它有多大用处。

我已经使用BackupPC设置了一个较小的备份服务器。 这是在Ubuntu的资料库,设置它是一个单元。 使用rsync进行传输,执行文件级重复数据删除。

它会保留版本历史logging,并且可以指定过去有多less个版本。 随着年龄的增长,它会自动删除其中的一些。 假设是,你走的越远,你将需要的最小的粒度。 不过,它可以随意调整。

检查一下,这真的很好。

https://help.ubuntu.com/community/BackupPC

http://backuppc.sourceforge.net/faq/BackupPC.html