使用哪种 KVM 磁盘类型?

使用哪种 KVM 磁盘类型?

我正在设置几个 KVM 虚拟客户端,正在考虑使用哪种磁盘类型。我在网上找不到一个好的资源来列出每种磁盘类型的优缺点。

您能帮我列出不同磁盘类型以及每种磁盘类型的优缺点吗?以下是我所了解的磁盘类型:

  • 原始图像
  • qcow2
  • 专用分区(例如,在 LVM 中)

我对这些标准很好奇:

  • 设置简易性(创建每种类型的难易程度)
  • 表现
  • 易于克隆
  • 易于扩展(扩大规模,以便虚拟客户机拥有更多磁盘空间)
  • 该磁盘类型特有的功能
  • 易于备份
  • 迁移至其他主机

你能帮我评估我的选择吗?

答案1

我会专注于原始图像和 LVM。

原始图像更容易备份和复制,因为它只是一个文件,你可以用它做任何你能对简单文件做的事情。此外,避免使用特定格式,你可以轻松使用它,比如在发生崩溃或问题时将其安装在循环设备上以访问文件(甚至在没有虚拟化的备份服务器上)。另一方面,原始图像文件受内核文件缓存的影响,因此在处理崩溃和关机时必须非常小心,因为 VM sync() 并不意味着主机服务器将文件 sync() 到磁盘。我遇到了很多问题。

LVM 绕过了缓存问题,性能优于文件(据我所知,最近几个月可能有所变化),并且具有快照备份的优势。更改磁盘大小也不复杂,但比原始文件稍微复杂一些。此外,使用 LVM,您可以设置 DRBD 进行实时迁移/故障转移。

在我看来,除非您对文件有非常特殊的需求,否则最好使用 LVM。

答案2

考虑到您给出的考虑列表,绝对选择 LVM。使用 qcow2 的唯一优势是它允许制作快照。这些快照远远优于 LVM 快照。RAW 当然根本没有快照选项,但 RAW 图像可以作为 qcow2 快照的基础。

  • 设置简易性(创建每种类型有多容易):所有类型都一样,原始 /qcow2 由 qemu-img 使用,分区/LV 由 fdisk/lvm api 使用
  • 性能:原始 LV 或块设备最快,其次是 RAW 文件,qcow2 开销最大,但功能最丰富
  • 易于克隆:qemu-img 用于此目的,它可以考虑已拍摄的快照。对于 LV 或其他块设备,您可能需要使用 dd
  • 易于扩展(使其更大,以便虚拟客户机拥有更多磁盘空间):如果这很重要,LV 是最佳选择。通常情况并非如此,因为您只需添加另一个虚拟磁盘或任意大小,并且还可以通过使用稀疏磁盘来过度使用存储
  • 该磁盘类型特有的功能:正如我已经提到的,qcow2 是功能最丰富的格式。顺便说一下,它可以与原始图像结合使用,使用原始图像作为基础图像,使用 qcow2 作为快照
  • 备份的简易性:复制文件,或者 dd/cpio - 这不是什么问题
  • 迁移到其他主机:对于实时迁移,您通常会使用集中式存储,无需移动图像。块迁移也是可能的。至于在离线模式下将虚拟机从一台主机移动到另一台主机 - 这与虚拟机的备份/恢复相同

答案3

更简单有它的好处,但我最近发现 KVM 中唯一的磁盘格式允许整合虚拟机内存和运行状态的快照是 qcow2玩了几分钟之后。

相关内容