ESXi 和 KVM 之间的虚拟机克隆/备份策略要求克隆与原始虚拟机同时运行

ESXi 和 KVM 之间的虚拟机克隆/备份策略要求克隆与原始虚拟机同时运行

我被这个问题难住了,需要帮助。ESXi Free 版本 5 和 qemu-kvm/libvirtd 版本 0.10。我将首先介绍 TL;DR,因为它很好地描述了问题。

总结 我在 KVM 服务器上有 2 个虚拟机(qcow2 映像大小为 100 和 200GB),并且需要每周进行一次克隆,以便在需要时在单独的 ESXi(免费版)主机上启动。KVM 服务器正在使用 SSD 磁盘,因为速度非常重要,并且磁盘空间和资源不足,这使得这个问题有点困难。我们需要无限期地保留这些克隆的所有版本。我有磁带备份和一个有几百 GB 的文件服务器,但希望随时掌握至少最近 2 个月的备份/克隆。KVM 服务器上的原始虚拟机必须始终以当前状态运行,它们无法恢复到该服务器上的先前快照,如果我们出于任何原因需要访问先前的状态,我们必须在 ESXi 服务器上启动该周的克隆。我在 ESXi 主机上只有大约 1 TB 的存储空间,并希望有一些涉及增量磁盘的解决方案来节省空间并防止数据重复。

详细解释

我有 2 台运行 KVM 的服务器,每台都配有 SSD 驱动器,并且基本上没有可用空间。每台 KVM 服务器都运行一个使用 qcow2 作为磁盘格式的关键 VM。资源已经专用于每台机器上的 VM,因此这些服务器上实际上没有太多空间可以做其他事情。一台 VM 为 100GB(磁盘大小),另一台为 200GB。

我还有一个 ESXi 5.0(免费版)主机,大约有 1TB 的空间和大量可用资源。数据存储是本地存储 RAID 5。

我需要一个解决方案,该解决方案涉及每周一次从 KVM 服务器拍摄两个虚拟机的快照或克隆,然后可以在 ESXi 服务器上运行,同时原始虚拟机仍在 KVM 机箱上运行(我将手动更改主机名等,以避免网络冲突)。通常这将是一个克隆场景,但这样做会很快耗尽空间。我需要无限期地保留每周的备份。我确实有一个文件服务器,有几百 GB 的存储空间,也可以将其备份到磁带上,但如果我需要启动一个,我希望至少有最近 2 个月的虚拟机快照/克隆可用。

性能对于 KVM 服务器来说至关重要,因此快照链并不是理想的解决方案,而且它无法解决问题,因为原始 KVM VM 需要始终以当前版本运行。ESXi 主机上的克隆将是应用快照的有效位置。

这个问题对我来说出乎意料地难以解决,所以我希望得到一些帮助。

答案1

好的,让我们一步一步来:

  1. 要在两个不同的平台之间移动虚拟机,您需要 V2V 解决方案。virt-v2v旨在将虚拟机从 ESXi 环境拉入 libvirt 主机,而不是相反。我不知道 VMWare 是否提供了支持 kvm/libvirt 的 v2v 工具,但无论如何,v2v 都会增加复杂性,我先从 #2 开始
  2. 通过运行相同虚拟机的克隆来让两个不同的虚拟化平台相互备份并不是一个好主意,因为每次转换不仅仅是一个虚拟机克隆,而且还是一个 v2v 过程,这需要您进入虚拟机并更新其配置,就像您在两个非常不同的硬件平台之间移动服务器设置时所做的那样。我会用 KVM 重新安装 ESXi 主机,以使事情变得更简单。
  3. 如果将两台主机放在一个公共平台上,就可以很容易地拍摄 COW 快照并仅将其存储在备份服务器上,而使用脚本丢弃较旧的快照qemu-img

相关内容