Virtual Machine File System (VMFS)

Virtual Machine File System (VMFS) is a datastore type that is deployed on block storage devices, and it is a special high-performance file system format that is optimized for storing virtual machines. You can create VMFS datastores on Fibre Channel, iSCSI, FCoE, and local storage devices. ESXi 7.0 supports VMFS Versions 5 and 6 for reading and writing. ESXi 7.0 does not support VMFS Version 3. When working with VMFS datastores in vSphere 7.0, consider the following: Block size: The block size on a VMFS datastore defines the maximum file size and the amount of space a file occupies. VMFS Version 5 and Version 6 data-stores support a 1 MB block size. Storage vMotion: Storage vMotion supports migration across VMFS, vSAN, and vVols datastores. vCenter Server performs compatibility checks to validate Storage vMotion across different types of datastores. Storage DRS: VMFS Version 5 and Version 6 can coexist in the same datastore cluster. However, all datastores in the cluster must use homogeneous storage devices. Do not mix devices of different formats within the same datastore cluster. Device Partition Formats: Any new VMFS Version 5 or Version 6 datastore uses the GUID Partition Table (GPT) to format the storage device, which means you can create datastores larger than 2 TB. If your VMFS Version 5 datastore has been previously upgraded from VMFS Version 3, it continues to use the Master Boot Record (MBR) partition format, which is characteristic of VMFS Version 3. Conversion to GPT happens only after you expand the datastore to a size larger than 2 TB.

Network File System (NFS)

An NFS client built into ESXi uses the Network File System (NFS) protocol over TCP/IP to access an NFS volume located on a NAS server. The ESXi host can mount the volume and use it as an NFS datastore. You can create NFS datastores on NAS devices. ESXi 7.0 supports NFS Versions 3 and 4.1. To support both versions, ESXi 7.0 uses two different NFS clients.

vSAN

VMware vSAN is a distributed layer of software that runs natively as a part of the hypervisor. vSAN aggregates local or direct-attached capacity devices of an ESXi host cluster and creates a single storage pool shared across all hosts in the vSAN cluster. You can create a vSAN datastore in a vSAN cluster. vSAN is a hyper-converged storage solution, which combines storage, compute, and virtualization into a single physical server or cluster. The following section describes the concepts, benefits, and terminology associated with vSAN.

VMware vSphere Virtual Volumes (vVols)

VMware vSphere Virtual Volumes (vVols) functionality changes the storage management paradigm from managing space inside datastores to managing abstract storage objects handled by storage arrays. With vVols, an individual virtual machine, not the datastore, becomes a unit of storage management. And storage hardware gains complete control over virtual disk content, layout, and management. You can create a vVols datastore in an environment with a compliant storage system. A virtual volume, created and manipulated out of the band by a vSphere APIs for Storage Awareness (VASA) provider, represents a storage container in vSphere. The VASA provider maps virtual disk objects and their derivatives, such as clones, snapshots, and replicas, directly to the virtual volumes on the storage system. ESXi hosts access virtual volumes through an intermediate point in the data path called the protocol endpoint. Protocol endpoints serve as gateways for I/O between ESXi hosts and the storage system, using Fibre Channel, FCoE, iSCSI, or NFS.

Conclusion

Datastores are the most essential components of VMware vSphere 7 used to store VMs, ISOs, and other important information. VMFS and NFS are traditional storage virtualization models that refer to a logical abstraction of physical storage resources and capacities from VMs and their applications. VMware vSAN and VMware vSphere Virtual Volumes (vVols) are Software-Defined Storage Models that abstract storage capabilities. With the software-defined storage model, a VM becomes a unit of storage provisioning and can be managed through a flexible policy-based mechanism.