虚拟磁盘映像简介
1. 概述
虚拟机是一种虚拟化 软件,我们可以使用它来运行操作系统,而无需将它们安装在裸机上。在安装新操作系统的过程中,虚拟机会提示我们选择要使用的虚拟磁盘映像类型。
在本文中,我们将介绍可用于存储数据的虚拟机(例如VirtualBox) 提供的虚拟磁盘。我们将提供基本概述以及每种虚拟磁盘类型的优缺点。
之后,我们将讨论为最适合的场景选择正确的虚拟磁盘格式。
2. 什么是虚拟磁盘映像
顾名思义,虚拟磁盘映像 (VDI) 是实际硬盘一部分的副本。除了是 HDD 的逐个扇区副本外,它还包含物理硬盘的完整内容和数据结构。
虚拟磁盘映像是常规文件。虚拟机将图像文件视为容器。他们将向这个容器读取和写入数据——将它与主机操作系统分开。我们的客户操作系统和用户数据存储在这些容器中。因此,我们可以将这些虚拟磁盘映像带到其他机器上,它们将在兼容的虚拟机上工作。
此外,虚拟机提供的虚拟磁盘镜像种类繁多,如VMDK、VHD、VDI、QCOW、QED等。在下一节中,我们将介绍这些 VDI 并了解它们之间的区别。
3. 虚拟磁盘映像
3.1. VMDK
VMDK(Virtual Machine Disk)是VMWare专门为VMWare产品 推出的一类虚拟磁盘。截至 2011 年,它现在是一种开放格式,也被其他虚拟机使用。
VMDK 磁盘映像允许动态分配存储。我们从一开始就指定图像的最大尺寸。当我们向图像读写数据时分配或释放物理磁盘空间,使其成为一种非常节省空间的格式。
相对于动态分配的存储,它还支持固定分配的存储。固定磁盘在物理硬盘中分配指定的空间。非官方表明,固定大小的磁盘比动态大小的磁盘执行速度稍快。
除此之外,VMKD 格式还具有将图像拆分为更小文件的附加功能。因此,如果文件系统对文件大小有限制,我们可以创建更大的磁盘映像。
此外,VMDK 的存储容量为 62 TB。不仅如此,众所周知,VMDK 的执行速度明显快于所有其他 VDI。
3.2. VDI
VDI 代表 VirtualBox 磁盘映像。这是 VirtualBox 使用的 Oracle 默认磁盘映像格式。与 VMDK 类似,此图像格式并非特定于 VirtualBox,可由其他兼容的虚拟机(如 VMWare 和 Microsoft VHD/VHDX)使用。
与 VMDK 一样,VDI 也是一种可移植的磁盘映像格式,同时支持固定和动态存储分配。与 VMDK 不同,VDI 不支持增量备份。但是,它提供了高级数据冗余,从而减少了丢失数据的机会。
VDI 的存储容量为 2 TB,与 VMDK 相比处于劣势。
3.3. VHD 和 VHDX
VHD(Virtual Hard Disk)和VHDX(Virtual Hard Disk Extended)是微软拥有的磁盘映像格式。VHD 是专门为Microsoft Hyper-V 管理程序开发的。截至 2012 年,它已被现代且功能丰富的 VHDX 所取代。
与 VMDK 和 VDI 类似,VHD 和 VHDX 也作为常规文件驻留在物理硬盘上。除了动态和固定分配存储外,VHD 和 VHDX 还支持差异硬盘映像。DHDI 将更改保留在 VHD 内的子映像中——允许撤消更改或将更改合并到 VHD 中。
此外,VHD 映像也可以是直通磁盘 *映像。*直通磁盘映像链接到物理硬盘。例如,我们可以在物理分区上挂载一个 VHD 磁盘。
此外,VHDX 的执行速度比 VDI 稍快,存储容量为 64 TB。
3.4. QCOW 和 QED
QCOW 代表 QEMU 写时复制。它是QEMU 的默认光盘映像格式。它由三个不同的版本组成:qcow、qcow2 和qcow3 。QED 本来应该是qcow2 的升级替代品,但被 QEMU 团队放弃了,他们建议不要使用这种格式。
QCOW 只支持动态分配存储。此外, QCOW 的最新版本 比以前的版本性能更高。
4. 选择合适的 VDI
在了解了这些不同的磁盘映像格式之后,我们现在可能会更好地选择正确的磁盘映像格式。在实践中,我们应该始终以更可靠、更快速的方式为目标。考虑到这一点,VMDK 听起来像是一个总体上更好的选择。
VMDK 具有我们可能需要的所有功能。它执行速度更快,提供增量备份,并支持巨大的存储容量。最重要的是,我们可以在最流行的虚拟机上使用它。
但是,如果我们使用 QEMU 或 QCOW,我们可能会选择 QCOW,因为它与 QEMU 紧密集成。同样,如果我们在 Microsoft Windows 上并且需要传递磁盘映像等功能,我们也可以使用 VHDX。