干货:虚拟机兼容性和文件格式详解

简介:

如果想要在多hypervisor环境当中实现良好的虚拟机兼容性,那么深入理解虚拟机文件和磁盘格式是十分重要的。

如果管理员在工作当中只需要管理一种虚拟化平台,那么就没有必要使用多种虚拟化文件格式。相同厂商hypervisor能够支持现有文件格式,即便将hypervisor升级到新版本,之前的文件依然能够正常工作。

但是如果管理员需要在一种hypervisor环境当中使用另外一种hypervisor平台创建的虚拟机,那么情况就完全不同了。不同hypervisor创建的虚拟化文件格式是完全不兼容的。为了实现跨hypervisor的虚拟机兼容性,首先需要了解不同格式之间的区别,之后对比不同虚拟化文件和磁盘格式之间的缺点和优点。

不同文件类型和文件格式

为了存储虚拟机,管理员必须至少使用两种不同类型的文件。硬盘文件用来存储虚拟机需要使用的所有文件以及虚拟机描述文件。为了将虚拟机从一个hypervisor平台顺利迁移到另外一个平台当中,必须确保目标hypervisor能够同时支持两种文件格式。但是实际操作过程并没有这么简单,因为不同hypervisor所支持的特性也不相同。因此,如果你是一名希望最大程度上确保虚拟机兼容性的管理员,那么必须使用两种平台都能够支持的特性。

磁盘文件和描述文件格式

在制定虚拟机兼容性策略的时候,首先需要决定的就是希望实现哪些功能。当然,源磁盘格式在目标hypervisor平台上应该是可用的。对于hypervisor来说,有很多种磁盘格式可供选择,每种磁盘格式都能够提供相应特性,这种情况使得保持兼容性十分困难。比如,管理员想要为虚拟机制作快照,那么最好虚拟机原生就支持这种特性。

常见的磁盘格式包括:

RAW::这并非是一种真正的磁盘格式,而是代表虚拟机所使用的原始镜像。它并不存储元数据,因此可以作为保证虚拟机兼容性的候选方案。然而,也正因为它不存储元数据,因此不能支持某些高级特性,比如快照和压缩等。

VMDK(Virtual Machine Disk)文件:它是VMware环境当中默认使用的磁盘格式。它支持多种不同特性,包括thin provisioning和thick provisioning,还有一些高级特性,比如支持集群环境。

VHD(Virtual Hard Disk):这是微软默认采用的文件格式,和VMDK类似,它也支持多种不同特性,能够在数据中心环境当中实现高效存储和使用。

Qcow2:这是QEMU所采用的默认磁盘格式,QEMU是一种开源hypervisor。由于Linux KVM也使用QEMU,因此qcow2格式经常被用在KVM环境当中。它能够高效使用存储,允许管理员在需要磁盘空间的时候按需进行分配,也就是所谓的copy on write(CoW)。

除了不同的磁盘格式之外,还需要考虑多种虚拟机描述文件格式。一些常用的格式包括KVM环境当中使用的XML文件以及VMware环境当中用来描述虚拟机的VMX文件。从兼容性角度来说,这些描述文件类型并没有虚拟磁盘格式那么重要。如果能够顺利读取虚拟磁盘,那么就能够完成大部分重要目标,也就是使用虚拟机。即便不能读取虚拟机描述文件,通常还能够在目标磁盘上重新创建虚拟机,因为通常描述文件当中只包含一些为虚拟机分配的硬件信息。

OVF和OVA的作用

2007年,主要虚拟化厂商同意使用一种通用格式来封装虚拟机,也就是OVF(Open Virtualization Format)。使用OVF的目的在于提供一套通用标准,保证虚拟机文件能够在不同虚拟化平台之间顺利迁移。一个OVF文件当中包含用于描述虚拟机内容的XML文件以及VMDK文件。即便OVF并不是所有hypervisor采用的默认格式,但是它已经获得了主要虚拟化厂商的支持,因此能够确保虚拟机在不同平台间的可移植性。

而OVA(Open Virtualization Application)格式在OVF文件的基础上又增加了一些功能性。这是一种归档文件,允许使用虚拟机压缩存储。和OVF文件一样,OVA文件也已经获得主要虚拟化平台的支持。使用VOA文件迁移虚拟机的好处在于它使用的压缩算法已经得到所有虚拟化平台的支持。在使用OVA文件之前需要注意的是他们通常必须被导入到虚拟化平台当中。

在处理虚拟机兼容性问题的时候,可能会涉及多种文件格式。比如磁盘文件格式、虚拟机描述文件格式以及OVA格式,OVA文件能够用来存储压缩虚拟机文件。



本文转自d1net(转载)

相关文章
|
4月前
|
数据库 虚拟化 Windows
虚拟机数据恢复—XenServer虚拟机磁盘文件丢失的数据恢复案例
虚拟机数据恢复环境: 某品牌服务器通过同品牌某型号的RAID卡,将4块STAT硬盘为一组RAID10阵列。上层部署XenServer虚拟化平台,虚拟机安装Windows Server系统,每台虚拟机有两个虚拟机磁盘(系统盘 + 数据盘),虚拟机作为Web服务器使用。 虚拟机故障&分析: 机房异常断电导致服务器中一台VPS(XenServer虚拟机)不可用,虚拟磁盘文件丢失。
|
4月前
|
存储 运维 虚拟化
虚拟化数据恢复——Hyper-V虚拟化故障导致虚拟机文件丢失的数据恢复案例
在Windows Server上部署的Hyper-V虚拟化环境中,因存储中虚拟机数据文件丢失导致服务瘫痪。北亚企安数据恢复工程师通过物理检测、操作系统及文件系统检测,确定为人为格式化造成,并通过镜像硬盘、重组RAID、分析并恢复文件索引项等步骤,成功恢复数据,最终在新Hyper-V环境中验证并迁移所有虚拟机,确保用户业务恢复正常运行。
|
4月前
|
Linux 测试技术 虚拟化
解决虚拟机文件因快照占用硬盘空间较多的情况(压缩虚拟机文件,节省硬盘空间)
解决虚拟机文件因快照占用硬盘空间较多的情况(压缩虚拟机文件,节省硬盘空间)
267 1
|
5月前
|
存储 SQL 数据挖掘
虚拟化数据恢复—VMware虚拟机vmdk文件被误删除的数据恢复案例
虚拟化数据恢复环境: 某品牌服务器(部署VMware EXSI虚拟机)+同品牌存储(存放虚拟机文件)。 虚拟化故障: 意外断电导致服务器上某台虚拟机无法正常启动。查看虚拟机配置文件发现这台故障虚拟机除了磁盘文件以外其他配置文件全部丢失,xxx-flat.vmdk磁盘文件和xxx-000001-delta.vmdk快照文件还在。管理员联系VMware工程师寻求帮助。VMware工程师尝试新建一个虚拟机来解决故障,但发现ESXi存储空间不足。于是将故障虚拟机下的xxx-flat.vmdk磁盘文件删除,然后重建一个虚拟机并且分配固定大小的虚拟磁盘。
|
4月前
|
Kubernetes Linux 容器
解决删除快照后启动虚拟机显示指定的文件不是虚拟磁盘 打不开磁盘“路径”或它所依赖的某个快照磁盘。 模块“disk”启动失败。 未能启动虚拟
解决删除快照后启动虚拟机显示指定的文件不是虚拟磁盘 打不开磁盘“路径”或它所依赖的某个快照磁盘。 模块“disk”启动失败。 未能启动虚拟
308 0
|
7月前
|
SQL 存储 数据库
虚拟化数据恢复—XenServer虚拟机磁盘文件丢失的数据恢复案例
虚拟化数据恢复环境: 某品牌R720服务器,4块STAT硬盘通过H710P阵列卡组建了一组raid10磁盘阵列。服务器上部署XenServer虚拟化平台,虚拟机安装Windows Server系统,作为Web服务器使用,运行SQL Server数据库。共有2个虚拟磁盘:数据盘+系统盘。 虚拟化故障: 机房断电导致XenServer虚拟化平台中一台VPS不可用,XenServer虚拟机磁盘文件丢失。
虚拟化数据恢复—XenServer虚拟机磁盘文件丢失的数据恢复案例
|
9月前
|
存储 SQL 数据挖掘
服务器数据恢复—误删除VMware虚拟机vmdk文件的数据恢复案例
服务器数据恢复环境: 某大厂PS4000服务器,服务器上部署VMware ESXi虚拟化平台。 服务器故障: 机房断电,重启后服务器中的某台虚拟机不能正常启动。管理员查看虚拟机配置文件,发现无法启动的虚拟机的配置文件除了磁盘文件以外其他配置文件全部丢失,xxx-flat.vmdk磁盘文件和xxx-000001-delta.vmdk快照文件还存在。联系VMware原厂工程师进行诊断,VMware原厂工程师尝试新建一个虚拟机,但发现存储空间不足,于是将故障虚拟机下的xxx-flat.vmdk磁盘文件删除了。VMware工程师重新建了一个虚拟机,分配了固定大小的虚拟磁盘,为虚拟机安装了Window
服务器数据恢复—误删除VMware虚拟机vmdk文件的数据恢复案例
|
8月前
|
存储 开发框架 安全
虚拟机磁盘&UAC&服务和注册表&int文件
虚拟机磁盘&UAC&服务和注册表&int文件
|
9月前
|
Windows
虚拟机内存越用越少,即使文件都永久删除了!!!
虚拟机内存越用越少,即使文件都永久删除了!!!
|
9月前
|
Ubuntu 虚拟化 Windows
如何优雅的实现主机与虚拟机文件共享?
如何优雅的实现主机与虚拟机文件共享?
130 0