2. vSphere存储与虚拟机文件结构解析

做vSphere备份恢复,第一件必须搞清楚的事不是“用哪个备份软件”,而是“要备份的东西到底存在哪里、以什么形式存在”。虚拟机在数据存储上并不是一个单一文件,而是一组按约定命名的文件集合;同时,这些文件可能落在VMFS、NFS或vSAN等不同类型的存储上。存储类型决定了备份数据从哪里读、以什么粒度读、能否直接挂载快照,而文件类型决定了哪些必须备份、哪些可以重建、哪些备份了反而有害。

一、三类主流存储的差异及其对备份的影响

VMFS是VMware自有的集群文件系统,通常部署在块存储(FC、iSCSI、SAS)之上。它支持多ESXi主机同时读写同一数据存储,天然支持VMFS快照(基于redo-log的增量盘),因此基于VMware VADP(vStorage APIs for Data Protection)的备份方案可以直接调用存储层快照,实现无代理备份。VMFS的块大小(1MB、2MB等)会影响单个文件上限,但对备份影响最大的是它的快照机制:备份软件触发快照后,虚拟机写入被重定向到delta文件,备份程序从基础盘读取一致状态。

NFS是把远程文件系统挂载到ESXi主机上,虚拟机文件以普通文件形式存放在NFS导出目录中。NFS数据存储同样支持VADP快照,但快照由NFS服务器端配合实现,性能与NFS服务器能力密切相关。NFS的一个显著特点是:备份软件有时可以直接通过NFS协议访问文件,绕过ESXi主机,这在主机故障时反而成为恢复优势。但NFS的锁机制和网络延迟会直接影响快照创建与备份窗口。

vSAN是软件定义分布式存储,数据以对象形式分布在各主机的本地磁盘组中,通过存储策略(如FTT=1、RAID-5)决定冗余级别。vSAN同样支持VADP快照,但备份读取路径经过vSAN分布式层,备份流量会占用主机网络与磁盘资源。vSAN的一个重要影响是:由于数据分散,传统基于LUN的存储快照无法直接使用,备份必须依赖VMware快照API或vSAN自身的快照能力。

VMFS / NFS / vSAN 存储类型与备份读取路径 VMFS(块存储) FC / iSCSI / SAS LUN VMFS 集群文件系统 VADP 快照 → delta 文件 备份路径:ESXi → 存储 LUN NFS(文件存储) NFS 服务器导出目录 ESXi 挂载为数据存储 VADP 快照 / 直接文件访问 备份路径:ESXi 或直连 NFS vSAN(分布式对象) 本地磁盘组(缓存+容量) 分布式对象 + 存储策略 VADP 快照 / vSAN 快照 备份路径:ESXi → vSAN 网络 虚拟机文件集合(以 VM 名称为前缀,存放于同一目录) .vmx 配置文件 硬件版本、网卡、磁盘 必须备份(小文件) -flat.vmdk 虚拟磁盘 实际数据块,容量最大 备份核心对象 -delta.vmdk 快照盘 快照期间的写入增量 备份后应合并/删除 .vmsd / .vmsn 快照元数据与内存状态 通常不单独备份 日志文件:vmware.log、vmkernel.log、vobd.log 等 用于排障与审计,不属于虚拟机数据备份范围,但恢复后可用于核对时间线与错误原因

二、虚拟机文件集合的备份含义

一个典型的虚拟机目录中,最核心的文件包括:.vmx配置文件、-flat.vmdk虚拟磁盘数据文件、-delta.vmdk快照增量文件、.vmsd快照描述文件、.vmsn快照内存状态文件,以及vmware.log等日志文件。

.vmx文件记录了虚拟机的硬件配置:CPU数量、内存大小、网卡MAC地址、磁盘控制器类型、磁盘文件路径等。它体积很小,但恢复时不可或缺——没有它,即使虚拟磁盘数据完好,也无法直接注册虚拟机。因此备份方案必须把.vmx纳入保护范围,很多备份软件默认会备份它,但手工复制磁盘文件时容易遗漏。

-flat.vmdk是虚拟磁盘的实际数据载体,通常占据虚拟机目录的绝大部分空间。它是备份的核心对象,备份窗口和存储容量主要由它决定。需要注意的是,.vmdk描述文件(不含-flat)只是磁盘的元数据描述,真正的大数据在-flat.vmdk中,两者必须成对存在。

-delta.vmdk是快照产生后的增量盘。当虚拟机创建快照后,所有新写入都进入delta文件,基础盘变为只读。备份软件正是利用这一机制:创建快照→读取基础盘一致状态→备份完成后删除快照并合并delta。如果备份异常中断,delta文件可能残留,导致数据存储空间被持续占用,甚至影响虚拟机性能。因此备份任务结束后必须检查快照是否已清理。

.vmsd和.vmsn分别记录快照的元数据和内存状态。对于“静默快照”或“内存快照”,.vmsn可能很大(接近虚拟机内存大小)。常规备份通常不需要备份这两个文件,因为备份软件自己管理快照生命周期;但如果需要保留特定时间点的内存状态用于调试,则要单独考虑。

日志文件(vmware.log、vmkernel.log、vobd.log等)不属于虚拟机数据本身,一般不纳入备份范围。但在灾难恢复后,这些日志是核对故障时间线、确认恢复点是否正确的关键依据。建议在恢复演练后保留一份日志副本,用于复盘。

三、存储类型如何影响备份策略选择

在VMFS上,备份软件通常通过ESXi主机的VADP接口读取数据,备份流量经过主机HBA或网卡。如果使用存储阵列快照(如NetApp SnapMirror、Dell PowerStore Snapshot),可以做到几乎零窗口,但要求备份软件与阵列集成。

在NFS上,除了VADP路径,还可以让备份代理直接挂载NFS导出目录,以文件方式读取-flat.vmdk。这种方式在ESXi主机不可用时仍能恢复数据,但需要处理好文件锁和权限。NFS备份的性能瓶颈通常在NFS服务器和网络带宽,而不是ESXi主机CPU。

在vSAN上,备份读取会经过vSAN分布式层,备份流量与虚拟机正常运行流量共享主机网络和磁盘。因此建议为备份流量配置独立的vmkernel端口和网络,并利用vSAN存储策略中的QoS或网络I/O控制限制备份带宽,避免备份窗口影响生产业务。此外,vSAN环境下快照的创建和合并速度受对象分布和策略影响,备份窗口估算时应留出余量。

判断备份是否完整的一个实用方法:恢复时先注册.vmx,再检查虚拟磁盘是否可挂载。如果.vmx缺失但-flat.vmdk存在,可以手工重建一个最小.vmx并挂载磁盘,但网卡MAC、BIOS UUID等配置会丢失,需要重新配置。

四、备份检查要点

文件/对象是否必须备份恢复时的作用常见风险
.vmx 配置文件必须注册虚拟机、还原硬件配置遗漏后无法直接注册
-flat.vmdk 虚拟磁盘必须承载操作系统与业务数据备份窗口不足、容量估算错误
-delta.vmdk 快照盘备份期间临时存在保证备份一致性残留导致空间耗尽
.vmsd / .vmsn通常不需要保留快照元数据/内存状态误备份导致容量浪费
vmware.log 等日志不纳入数据备份恢复后排障与审计被忽略导致无法复盘

理解存储类型与文件结构的对应关系后,才能正确回答“备份什么、从哪里读、恢复时先恢复什么”。下一阶段的实际操作中,无论是使用Veeam、Commvault还是VMware原生工具,都需要围绕这些文件对象和存储路径来设计备份任务与恢复验证流程。