VMFS
From Wikipedia, the free encyclopedia
VMFS is VMware Inc.'s SAN file system. VMFS is used solely in the company's flagship server product, ESX Server. It was developed and is used to store virtual machine disk images, including snapshots. Multiple servers can read/write the same filesystem simultaneously, while individual virtual machine files are locked. VMFS volumes can be logically "grown" (nondestructively increased in size) by spanning multiple VMFS volumes together.
There are three versions of the filesystem, namely VMFS1, VMFS2 and VMFS3.
- VMFS1 was used by the ESX 1.x which is not sold anymore. It didn't feature the cluster filesystem properties and was used only by a single server at a time. VMFS1 is a flatfilesystem with no directory structure.
- VMFS2 is used by ESX 2.x, 2.5.x and ESX 3.x. While ESX 3.x can read from VMFS2, it will not mount it for writing. VMFS2 is a flatfilesystem with no directory structure.
- VMFS3 is used by ESX 3.x. As a most noticeable feature, it introduced directory structure in the filesystem. Older versions of ESX can't read or write on VMFS3 volumes. Beginning from ESX 3 and VMFS3, also virtual machine configuration files are stored in the VMFS partition by default.
Additional Features of VMFS:
- Allows access by multiple ESX Servers at the same time by implementing per-file locking. SCSI Reservations are only implemented when LUN meta data is updated (e.g. file name change, file size change, etc.)
- Add or delete an ESX Server from a VMware VMFS volume without disrupting other ESX Server hosts.
- Create new virtual machines without relying on a storage administrator.
- LVM allows for adaptive block sizing and addressing for growing files allows you to increase a VMFS volume on the fly (only by spanning multiple VMFS volumes; extending a volume by growing a LUN is not supported)
- VMFS file systems are automatically recognized when new LUNs are discovered on SAN
- Optimize your virtual machine I/O with adjustable volume, disk, file and block sizes.
- Recover virtual machines faster and more reliably in the event of server failure with Distributed journaling.