我为一个小型工作组管理一台 CentOS 4.8 服务器。去年我将文件系统转换为基于软件 RAID(RAID 1,两个镜像驱动器)的 LVM。
我现在在 LVM/RAID 上有以下文件系统:
/dev/mapper/vg-home 619G 231G 358G 40% /home
/dev/mapper/vg-tmp 7.9G 55M 7.5G 1% /tmp
/dev/mapper/vg-usr 7.9G 2.7G 4.9G 36% /usr
/dev/mapper/vg-var 7.9G 3.1G 4.5G 42% /var
为了备份这些文件系统,我使用 rsnapshot 和几个外部 2TB USB 驱动器,每周轮换一次。在实践中,这种方法效果很好。我已将 rsnapshot 配置为每四小时进行一次快照。
鉴于该配置,我还应该考虑进行 LVM 快照吗? LVM 快照是否更有效? 我可以比每 4 小时进行一次 rsnapshot 备份更频繁地执行它们而不会显着影响系统性能吗?
我知道 LVM 快照可用于确保备份的数据库一致性,但是该服务器不运行数据库,因此这并不是一个问题。
似乎有一种方法可以以互补的方式同时进行 LVM 和 rsnapshot 备份,但我无法弄清楚。
答案1
我非常喜欢使用快照进行备份,但我通常以 LVM 快照中描述的方式使用它们——制作快照,将其安装在某处,用你最喜欢的备份工具备份快照(我喜欢巴库拉),然后删除 LVM 快照。理想情况下,此备份应放在异地
这与 rsnapshot 非常契合:您的 rsnapshot 快照可以是立即可用的本地备份,也可以在您从 LVM 快照创建的文件系统的异地备份中捕获。
LVM 快照与 BSD UFS/FFS 快照非常相似,因为它们存储了快照拍摄时间和当前系统状态之间的差异:这意味着随着快照和主磁盘进一步不同步,性能将下降,并且您维护的每个快照都会产生一些开销(必须跟踪对磁盘的任何更改,以便快照知道它)。
实际上,除非您的磁盘经常更改并且您将快照保留很长时间,否则这种开销并不大。
看http://tldp.org/HOWTO/LVM-HOWTO/snapshots_backup.html有关使用 LVM 快照进行备份的更多信息(与我刚才所说的内容大致相同)。
顺便说一句,如果你要对生产服务器做一些非常危险的事情,LVM(或UFS)快照也是一种很好的“保存游戏”的东西,但这超出了你的问题范围
答案2
根据我的经验,如果长时间保存快照,使用 LVM 进行快照会对磁盘性能产生巨大影响。我过去使用 LVM 快照进行备份,因为我也在备份一些 sql 服务器。但我发现 rsnapshot 非常适合这样做(我只需要编写一个小脚本来执行 sql 备份)并使用 rsnapshotbackup_script
选项启动它。