VMware VMFS is VMware, Inc.'s clustered file system used by the company's
flagship server virtualization suite, vSphere. It was developed 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" by spanning
multiple VMFS volumes together. It is not mandatory to use VMFS with VMware;
an alternative is NFS. Version history
There are four versions of VMFS, corresponding with ESX Server product
releases. VMFS1 was used by ESX Server v1.x. It
did not feature the cluster filesystem properties and was used only by a single
server at a time. VMFS1 is a flat filesystem with no directory structure.
VMFS2 is used by ESX Server v2.x and v3.x. VMFS2 is a flat filesystem with no
directory structure. VMFS3 is used by ESX Server v3.x and
vSphere 4.x. Notably, it introduces directory structure in the filesystem.
VMFS5 is used by vSphere 5.x. Notably, it raises the extent limit to 64 TB and
the file size limit to 62 TB, though vSphere versions earlier than 5.5 are
limited to VMDKs smaller than 2 TB. VMFS-L is the underlying file system for
VSAN-1.0. Leaf level VSAN objects reside directly on VMFS-L volumes that are
composed from server side direct attached storage. File system format is
optimized for DAS. Optimization include aggressive caching with for the DAS use
case, a stripped lock down lock manger and faster formats.
Features Allows access by multiple ESX servers at
the same time by implementing per-file locking. SCSI reservations are only
implemented when logical unit number metadata is updated
Add or delete an ESX server from a VMware VMFS volume without disrupting
other ESX servers. With ESX/ESXi4, VMFS volumes can also be
expanded using LUN expansion. Optimize 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. Limitations
Can be shared with up to 64 ESX Servers. Maximum filesystem size is 50 TB as of
VMFS3, and 64 TB as of VMFS5. Maximum LUN size of 2 TB as of VMFS3 and
62 TB as of VMFS5. In VMFS3 and VMFS5 prior to vSphere 5.1,
the maximum number of hosts which can share a read-only file is 8. This
affects the scalability of linked clones sharing the same base image. In vSphere
5.1, this limit is increased to 32 with the introduction of a new locking
mechanism. VMFS3 limits files to 262,144 blocks,
which translates to 256 GB for 1 MB block sizes up to 2 TB for 8 MB block
sizes. VMFS5 uses 1 MB blocks throughout, and
has a file size limit of 62 TB, though the VMDK size is restricted to 2 TB -
512 B in ESXi versions earlier than 5.5 due to a limitation in the version of
SCSI emulated. There is also a limit of approx 30,720
files on a single VMFS3 datastore. This has been raised to 130,690 files on
VMFS5 Open Source Implementations
= fluidOps Command Line Tool = A Java open source VMFS driver enables
read-only access to files and folders on partitions formatted with the Virtual
Machine File System is developed and maintained by fluid Operations AG. It
allows features like offloaded backups of virtual machines hosted on VMware ESX
hosts up to VMFSv3. = glandium VFS FUSE Mount =
Based on fluidOps code, vmfs-tools evolved to add more VMFS features and
supports read only VMFS mounts through the standard Linux VFS and the FUSE
framework. Developed by Christophe Fillot and Mike Hommey and available as
source code download at the glandium.org vmfs-tools page or the Debian vmfs-tools
and Ubuntu vmfs-tools packages. References
External links VMFS Technical Overview and Best
Practices - VMware, Inc. VMware VMFS product page - VMware, Inc.
Open Source VMFS Implementation - Project vmfs