有没有办法做一个现场qcow2备份没有暂停VM的?

我正在尝试为我们的服务器设置一个KVM备份解决scheme,以便在不停止系统的情况下进行实时备份。

我发现了几个已经testing好的脚本,但是它们都停止或“冻结”了一会儿的虚拟机,以节省内存状态。 但这对我们并不好。

我们有几个自定义应用程序写日志,需要保持一致,并且在备份期间系统“冻结”的时候,我们不能有10-60秒的暂停,这个“冻结”也会导致VM的时钟不同步背后的“冻结”的持续时间与我们的定制软件,其function之一是监视一些测量设备的时间戳。

所以问题是,有没有办法做到完整的虚拟机备份,可以一致地完成,而不会冻结虚拟机,备份还原应该工作:)

这里是我尝试过的几个脚本之一: KVM QCOW2 Live备份

最简单和最常见的解决scheme是拍摄虚拟机的实时快照(fsfreeze / flush /使用qemu-ga在拍摄快照之前保持fs一致性),备份底层映像,而虚拟机写入快照,然后在备份完成后将两者合并。

我会采取一种不同的方法:不是保存整个虚拟机的状态,而是保留新安装的虚拟机的原始图像,以备日后备份我感兴趣的数据以保证安全。 做这种备份的具体技术取决于你使用的工具(MySQL?InfluxDB?)。

如果您将LVM用于虚拟机的存储,那么您也可以使用LVM快照,而且快速且不会造成干扰。 这具有不考虑VM的RAM的缺点,所以在任何时间点都可能有无效的数据。