Differences Between VMFS 5 vs VMFS 6 and How to Migrate from VMFS 5 to 6
VMware's Virtual Machine File System (VMFS) is the go-to format for most system admins and IT professionals for storing their VM data. This is because the VMFS format is much more flexible and supports many applications.
Basically, VMFS is the standard file system format for vSphere and other VMware virtualization platforms. VMware releases new versions of its VMFS storage format from time to time – the newest versions being VMFS 5 and VMFS 6.
As everyone would guess, the newer version, VMFS 6, definitely comes with improved features and increased support than the VMFS 5. But then, there are applications where VMFS 5 will be the better choice to stick with. This article compares the VMFS 5 and VMFS6 in crisp detail.
Comparison of Features Between VMFS 5 and VMFS 6
Regardless of the VMFS edition and version, the main purpose is to store VMDKs (Virtual Machine Disk Files). However, depending on the VMFS edition, how the VMDK files are saved, available storage space made accessible, and file protection tools, differ. The VMFS 5 introduced up to 64 TB support and allowed up to a maximum of 62 TB for VMDK files.
Also, GPT partition layout was supported in VMFS 5 – this became a “Real Deal” for many IT professionals. However, the reign of VMFS 5 ended with the release of vSphere 6.5, which introduced VMFS 6. The VMFS 6 supports 512e storage devices by default and inherits GPT partition support from its predecessor while dropping support for MBR.
VMFS 5 Overview
Launched with vSphere 5.0, VMFS 5 extended storage limits from 50TB to 64TB, with file size limits increased up to 62 TB. However, older vSphere versions (prior to 5.5) can only handle VMDKs smaller than 2TB, with the 62TB limit applicable to versions after 5.5. Despite the release of VMFS 6, many IT admins continue to use VMFS 5 due to its MBR partitioning support, compatibility with vSphere 6.0, and other newer versions. Its major limitation is the restricted space allocation from guest OSes.
VMFS 6 Overview
VMFS 6 introduces unlimited space allocation from guest operating systems but is not compatible with ESXi 6.0 or earlier versions. It also does not support MBR partitioning. This version is favored for its support of automatic space reclamation and 512n storage devices by default. VMFS 6 adopts SESparse as the default snapshot technology for all disk sizes and introduces Large File Blocks (LFB) and Small File Blocks (SFB), enhancing file creation performance on VMFS drives.
To clearly understand the difference between VMFS 5 and VMFS 6, here’s a chart table. Actually, both versions have more similarities than differences.
Supports ESXi v6.5
Supports ESXi v6.0 or earlier
Virtual disk emulation type (Datastores per host)
Support 512n storage devices
Support 512e storage devices
Yes (for some local 512e devices)
Automatic space reclamation
Manual space reclamation (Via command line)
Space reclamation from guest OS
Support 1kb small files
Standard 1 MB
Standard 1 MB
VMFSsparse small disks and SEsparse for larger disks
SEsparse for all disk sizes
DRS and Storage DRS
- 512n: A traditional hard disk drive (HDD) that supports 512-byte-size physical sectors.
- 512e: Newer format. Connotes 4k sectors emulated as 512n – “native.”
- 4Kn: This refers to a local 4K-native disk drive that doesn’t emulate 512-byte sectors; hence, both physical and logical sectors of the drive will remain 4096 bytes. If you’re running a RAID with 4Kn drives, the drives must support native 4K sectors. Starting with the v6.7, VMware ESXi and VMFS support 4Kn disk drives.
- Master Boot Record (MBR): A disk partition format that stores not larger than 2.2TB data and four primary partitions.
- GUID Partition Table (GPT): A newer disk partition format cable for storing larger files >2TB with support for more than four primary partitions.
- Raw Device Mapping (RDM): Allows you to connect physical drives or a LUN to a VM directly.
LUN (Logical Unit Number): Used to indicate logical units on SCSI-based disks using an addressing scheme: Bus 🡺 Address (ID) 🡺 LUN.
How to Upgrade VMFS 5 to VMFS 6 with Datastore Migration
Looking at the advanced features and inclusion of technical support offered by VMFS 6, a typical IT professional would want an upgrade from VMFS 5. Upgrading from VMFS 5 to VMFS 6 is as technical as upgrading an older version to VMFS 5. So, if you’ve ever run a VMFS upgrade, this should be seamless.
To start with, it is important to highlight that things may go wrong and you may end up messing with your data files. Hence, it is always advisable to run a full backup of your hard drive and export it to another storage before proceeding with the upgrade. Basically, the upgrade means converting your VMFS 5 datastores to VMFS 6.
- Firstly, mark the VMFS 5 datastore that needs to be upgraded, you can rename it for clearer identification.
- Also, identify the vCenter Server
- List all ESX hosts sharing the datastore
- All the ESX hosts and the vCenter server must also be upgraded to vSphere 6.5
- Spare any datastore with equal or more capacity, and share with all ESX hosts.
Note: You should upgrade all ESX hosts sharing the datastore to vSphere 6.5 before upgrading the VMFS version. Otherwise, your older version ESX hosts will lose connectivity with the VMFS 6 datastore when you’re done with the upgrade.
- Run a version check for the vCenter Server and all ESX hosts
- Check if there’s an alternative datastore with the same or higher space allocation as the one you want to upgrade.
- The “alternative” datastore must be VMFS 6 compatible.
- Now, evacuate the datastore (the one you’re upgrading) – and migrate all its VMs to the alternative datastore.
- Ensure to run one migration at a time to be on the safer side. However, note down any migration failures (if any), and re-trigger process.
- Right-click the selected VM and select Migrate.
- When the migration wizard pops up, select a migration type 🡺Change storage only.
- Migrate to the alternative datastore
- When you’re done, check to confirm if the migrated datastore is empty – you can do this by listing files on the datastore. You should only continue the next step if the datastore is confirmed empty.
- Unmount the empty datastore from all ESX hosts and delete it.
- Then, create a new VMFS 6 datastore (Actions 🡪 Storage 🡪 New Datastore) using the same LUN as the old datastore you migrated and deleted.
- Enter the right configurations for your new datastore, including the partition system type.
- Now you can move all VMs back to the “new” datastore from the “alternative” datastore using storage vMotion. Also, move one VM at a time and record any error codes that may appear.
Note: For system admins running SDC and having Storage DRS configured, it is best to support this migration procedure using the datastore maintenance mode feature.
How to Upgrade VMFS 5 to 6 in the Command Line
If you have a vCenter Server inventory of registered VMs running from a VMFS 5 datastore (DS-A) and the datastore (DS-A) also has orphaned data not registered in the vCenter inventory, then try this method to upgrade to VMFS 6. This method requires knowledge of vSphere PowerCLI.
- Recheck the version(s) of all ESX hosts and vCenter Server(s)
- You should move all ESXi hosts and vCenter Server to vSphere 6.5 before proceeding with the steps below.
- There should be an alternative free datastore (DS-B), which should be of the same space capacity or higher than the one you want to upgrade. This alternative datastore (DS-B) should be running on VMFS 6.
- Launch the command-line utility and run this command: Get-Datastore | Select Name, FileSystemVersion
- Followed by this command: esxcli storage filesystem list
- Check for all datastores and their devices identifiers (IDs): esxcfg-scsidevs -m
- Identify a free VMFS 6 disk where you will move files– use df -h command to see disk usage information.
- Evacuate DS-A (migrate the data to the alternative DS-B) using this command: cp -R /vmfs/volumes/DS-A/ISO /vmfs/volumes/DS0-B.
- Note: To copy thin provisioned disks, use: vmkfstools -i
- If there errors during the migration, note it down and re-trigger the migration for the affected VMs.
- List out all the orphaned files that are not on your vCenter Server and move them to the DS-B one at a time.
- Once you have emptied DS-A, unmount it from all ESX hosts, then proceed to delete it: vmkfstools -C vmfs6 /vmfs/devices/disks/
- Now, create a new datastore to run VMFS 6 filesystem and rename the new datastore using the same LUN as the deleted one – DS-A.
- Run a storage rescan command for all ESX hosts and wait until the process completes.
- Move back all your virtual machines from DS-B to DS-A by running the storage vMotion operation. Again, move only one VM at a time and note down error logs (if any).
- Move back the orphaned data files, too.
Note: This method does not support Storage DRS and SDC reliably because datastore maintenance operation evacuates only datastores with known VM objects.
How to Recover VMFS Files if They Are Lost During Migration from VMFS 5 to 6
Here comes the nightmare, sometimes after moving these files, you may discover that some specific files are missing (not migrated). If this happens, you should fall back to the backup you created initially before starting the filesystem upgrade – restore the backup and redo the upgrading. But notwithstanding, you can recover files from VFMS drives using DiskInternals VMFS Recovery solution.
- Download and install DiskInternals VMFS Recovery; it runs on all Windows OS Editions and Windows Server 2003-2019
- Launch the program and select your VMFS drive
- Choose a data recovery mode; it is advisable to choose the Full Recovery Mode.
- This software will scan your VMware VMFS datastores, disks, volumes, and RAID (if used), as well as read the VMDK images if needed.
- You will be provided with read-only access to the recovered files, to re-save them on a storage device, you have to pay for the DiskInternals VMFS Recovery PRO version.
The standard VMFS Recovery tool from VMware works too, but has limited features – DiskInternals VMFS Recovery comes with many features and tools, while also including RAID Recovery features. You can run VMFS Recovery on any Windows PC; thanks to the intuitive interface, anyone can easily understand and use the tool.
To be on the safe side when migrating from one VMF version to another, it is important to back up your data. Even so, VMware vSphere Data Protection comes with a number of handy features to protect your VM data against mission-critical applications using agents. This native tool seamlessly integrates with VMware’s products.
Finally, upgrading from VMFS 5 to VMFS 6 is best done using the vSphere Client, which is GUI-based. It is faster, more intuitive, and easier to use. The command-line method is only recommended when you have orphaned files that need to be moved separately.
- What are the limitations of VMFS 6?
When choosing VMFS 6, it's important to note its capacity restrictions: Datastores can be established with a maximum size of 64 TB. The smallest allowable size for a datastore is 1.3 GB, though a minimum of 2 GB is recommended for optimal performance. A datastore can include 1 to 32 extents, with each extent potentially located on a separate VMFS volume.
- What are the new features of VMFS 6?
VMFS-6 brings forth two novel concepts for internal block sizes designated for file creation: LFB (Large File Blocks), which are configured to 512MB, and SFB (Small File Blocks), set at 1MB. These are utilized for managing files within VMFS-6 datastores. It's important to clarify that these specifications are distinct from the VMFS Block Size, which remains at 1MB.
- What are the limitations of VMFS 5?
VMFS-5 restricts the total number of extents to 32 and caps the overall datastore size at 64TB. However, it doesn't impose a 2TB limit on each individual extent. This means you have the flexibility to establish a datastore using a single LUN of 64TB, or alternatively, configure one comprising up to 32 extents, with the combined size not exceeding 64TB.
- Can you upgrade VMFS 5 to 6?
Important: It's possible to directly transfer your virtual machines from VMFS 5 to VMFS 6 datastores using Storage vMotion. Nonetheless, the following outlines the advised procedure for various deployment situations. Scenario 1: A single vCenter Server managing an inventory of registered virtual machines operating from datastore DS-1.