VMware ESX主机上虚拟机文件介绍

日期: 2009-01-05 作者:Eric Siebert翻译:唐琼瑶 来源:TechTarget中国 英文

在这一系列的第一部分中,我们从硬件角度了解了什么是虚拟机。在本部分中,TechTarget中国的特约虚拟化专家Eric Siebert将介绍ESX主机上虚拟机文件的组成。与虚拟机相关的文件有很多,它们位于主机上虚拟机的目录里。   如果你使用像WinSCP或者Datastore Browser这样内置在VI Client里的文件浏览器在ESX主机上查看虚拟机的根目录,会看见与虚拟机相关的文件清单。

多数文件以虚拟机的真实名字开头,基于这个文件的类型,有不同的文件扩展。除非你的虚拟机处于某种状态,否则不能看见所有可能的文件类型。例如,当虚拟机开启时只出现.vswp文件,当虚拟机暂停时只出现.vms……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

在这一系列的第一部分中,我们从硬件角度了解了什么是虚拟机。在本部分中,TechTarget中国的特约虚拟化专家Eric Siebert将介绍ESX主机上虚拟机文件的组成。与虚拟机相关的文件有很多,它们位于主机上虚拟机的目录里。

VMware ESX

  如果你使用像WinSCP或者Datastore Browser这样内置在VI Client里的文件浏览器在ESX主机上查看虚拟机的根目录,会看见与虚拟机相关的文件清单。多数文件以虚拟机的真实名字开头,基于这个文件的类型,有不同的文件扩展。除非你的虚拟机处于某种状态,否则不能看见所有可能的文件类型。例如,当虚拟机开启时只出现.vswp文件,当虚拟机暂停时只出现.vmss文件。

WinSCP

  那么组成虚拟机的所有这些文件是什么?它们有什么用?下面我们详细讨论这些文件类型。

  .nvram文件:这个小型文件包括虚拟机启动过程一部分的Phoenix BIOS。它类似于拥有BIOS芯片的物理服务器,能够设置硬件配置选项。一台虚拟机也应该在NVRAM文件里有虚拟BIOS。当虚拟机首次启动时,按F2键可以访问BIOS。不管虚拟机的硬盘配置发生了什么变化,都会保存在NVRAM文件里。这个文件是二进制的,如果删除的话,在虚拟机启动时会自动地重新创建。

  .vmx文件:这个文件包括虚拟机所有配置信息与硬件设置。不管你对虚拟机的设置作了何种编辑,所有的信息都会以文本形式保存在这个文件里。这个文件包括与虚拟机有关的多种信息,如特殊硬件配置(例如RAM大小、网络接口卡信息、硬盘驱动信息和串行与并行信息),高级能源与资源设置、VMware工具选项以及能源管理选项。虽然你可以直接编辑这个文件修改虚拟机配置,但不推荐你这样做,除非你清楚自己要怎么做。如果你直接对这个文件进行编辑,最好首先对文件进行备份。

  VMDK文件:所有的虚拟磁盘由两个文件组成,一个与虚拟磁盘大小相等的大型数据文件和一个小型文本磁盘描述文件,这个描述文件描述虚拟磁盘文件的大小与形状,也包括指向大型数据文件,还有虚拟磁盘驱动扇区数、磁头数、柱面数及磁盘适配器的信息。多数情况下,这些文件与其相关的数据文件的名字相同(例如myvm_1.vmdk和myvm_1-flat.vmdk)。你可以通过检查文件里的Extent Description区域将描述性文件与数据文件匹配。

  三种不同类型的虚拟磁盘数据文件能用于下面的虚拟机中:

  • –flat.vmdk文件:这是个默认的大型虚拟磁盘数据文件,创建于你添加虚拟硬盘驱动到虚拟机时,而不是RDM。当使用厚磁盘时,这个文件的大小相当于你创建虚拟硬盘驱动时所指定的大小。

flat.vmdk文件

flat.vmdk

  • –delta.vmdk文件:这些虚拟磁盘数据文件只用于创建虚拟机快照时。当创建了快照,对原始flat.vmdk的所有写入都停止,并变成只读;然后这些对虚拟磁盘的更改将写入delta文件。这些文件的初始大小是16MB,然后随着对虚拟机虚拟硬盘的更改需要而以16MB的速度增长。因为这些文件是虚拟磁盘所作更改的位图,一个单一delta.vmdk文件不能超过原始flat.vmdk文件的大小。每为虚拟机创建一个快照就会生成一个delta文件,并且它们的文件名以数字递增(如myvm-000001-delta.vmdk和myvm-000002-delta.vmdk)。当快照融合到原始–flat.vmdk文件后再删除时,这些文件将自动删除。

虚拟机文件

  • -rdm.vmdk文件:这是RDM映射文件,用来管理RDM设备的映射信息。映射文件作为一般磁盘文件呈现给ESX主机,可用于一般的文件系统操作。不过,对于虚拟机,存储虚拟化层将映射设备作为虚拟SCSI设备呈现。映射文件的元数据包括映射设备的位置(名称解析)和映射设备的锁定状态。如果你作了目录列表,那么可以看见这些文件在VMFS占用的磁盘空间与其所映射的实际LUN的大小的一样的,不过事实上,它们只是以这样的方式呈现而已,实际上非常小。每在虚拟机上创建一个RDM就会生成一个-rdm.vmdk文件。

虚拟机文件

  .vswp file:在启动虚拟机时,如果ESX主机由于过量使用而消耗光其物理内存时,会创建一个内存交换文件代替物理主机内存。这些文件的大小等于分配给虚拟机的内存大小,再减去任何内存预留(默认是0),例如,4GB虚拟机预留1GB,将创建3GB交换文件。这些文件通常创建在虚拟机里,不过只有当主机耗尽所有物理内存时才使用。由于虚拟机内存读或写入磁盘没有物理主机RAM快,如果虚拟机开始使用这个文件的话,性能会有所降低。这些文件会占用VMFS卷上非常大的磁盘空间,因此要确保有足够的可用空间,这是因为如果没有足够的空间创建这个文件的话,虚拟机启动不了。当虚拟机关闭或暂停时,这些文件将删除。

  .vmss文件:这个文件用于虚拟机暂停时,保存虚拟机的存储内容,以便在重新开始时继续运行。这个文件的大小与分配给虚拟机的RAM的大小相同。当虚拟机再次运行时,这个文件的内容将写回主机服务器的物理内存,不过,这个文件不会自动删除,除非关闭虚拟机(操作系统重启不管用)。当虚拟机再次暂停时,如果先前的暂停文件存在的话,这个文件将再次使用而不会删除和重新创建。当暂停虚拟机时,这个文件删除的话,那么虚拟机将正常启动,而不是从暂停状态启动。

  .vmsd文件:这个文件与快照一起使用,用于存储元数据和其他活动在虚拟机里的每个快照的信息。这个文本文件在创建快照之前的初始大小是0字节,并在每次创建或删除快照时更新信息。这些现有文件中只有一个文件不管快照运行的数量,因为所有信息都更新在这个单一文件。在这个文件里的快照信息由VMDK的名字与每个快照所使用的vmsn文件、显示名和描述以及快照的用户ID组成。一旦删除所有快照,这个文件保留了旧快照信息,不过憎加了新快照所使用的快照UID。它也重新命名第一个快照为“Consolidate Helper”,假设用于整合备份。

  .vmsn文件:这个文件与快照一起使用,用于存储虚拟机在进行快照时的状态。每在虚拟机上创建一个快照就会生成一个.vmsn文件,在删除快照时,文件自动删除。这个文件的大小基于你是否选择在快照里存储虚拟机的内存状态。如果你选择要存储内存状态,那么这个文件比分配给虚拟机的RAM大得多,因为整个存储内容,包括空内存都复制到这个文件。如果你选择不存储快照的内存状态,那么这个文件非常小(小于32KB)。当然,在暂停虚拟机时,这个文件的情况类似于.vmss。

  .log文件:这些文件创建来用于存储虚拟机的日志信息,并常常用于故障检查。在虚拟机目录里,有大量的这样的文件。当前的日志文件通常命名为vmware.log,往下的六个旧的日志文件也保留着,名字以数字结尾(如vmware-2.log)。在虚拟机关闭或重新启动时,或者如果日志文件达到了所限制的最大值,就会创建一个新的日志文件。所保留的日志文件的数量和所限制的最大值都定义为虚拟机高级配置参数(log.rotateSize和log.keepOld)。

  .vmxf文件:这是一个附加配置文件,不用于ESX,用于与Workstation兼容的目的。这个文件是文本格式,Workstation用来聚合虚拟机(VM teaming),将多个虚拟机分配成一组,作为一个单一对象开启或关闭、暂停或恢复它们。

  上面的内容包含了所有与虚拟机相关的文件,阅读本文章后,将会对虚拟机的组成有更好的理解。现在你可以查看各种组成虚拟机的文件。你可能会发现VMFS卷上有一些未适当清理的旧数据。在你开始删除任何文件之前要小心谨慎,确保你要删除的文件不再需要或用到。

相关推荐

  • VMware快照工作原理以及如何运用

    当你更新或修复应用程序和服务器时,VMware快照无疑是你的救星。而如果你负责监管虚拟环境,你更是应该知道什么 […]

  • 通过VMware DRS规则管理Windows Server 2016授权成本

    对于想要缓解Windows Server 2016授权成本负担的IT管理员,可以考虑VMware的分布式资源调 […]

  • VMware VVOLs应用案例逐步增加

    有时技术具有一定的超前性,VMware VVOL就是一个例证,它承诺满足人们对hypervisor技术的所有预 […]

  • 配置ESXi Autostart,自动打补丁

    顾名思义,VMware ESXi Autostart能够实现自动开启、关闭ESXi服务器上的虚拟机,让虚拟机管理变得更轻松。如果运行了多个虚拟机并且给主机打补丁后需要重启主机,那么ESXi Autostart的作用就更大了,没有Autostart的话,你需要在给主机打补丁后,手动重启每个虚拟机。