Upgrade from VMFS-3 Datastores to VMFS-5

After you upgraded your vCenter and ESX servers some things are not updated automatically. Besides VMware Tools and machine’s hardware you also need to upgrade the file system to benefit of the new enhancements and features. If you want to upgrade to the newer version of the file system all your hosts must be running ESXi 5 or higher. VMFS-5 is not compatible with ESX 4.x. If you upgrade and still have some legacy hosts connected to those datastores, hosts will lose connectivity with the storage.

By upgrading to VMFS-5 you get:

• Larger single extent volume (64TB)
• Larger Virtual Machine Disks (VMDKs): 2TB – 512 bytes with a new unified 1MB block size
• More and smaller sub-blocks (8KB) to reduce the amount of stranded/unused space
• Improvements in performance and scalability via the implementation of the vSphere vStorage API for Array Integration (VAAI) primitive ATS (Atomic Test & Set) across all datastore operations.

For more information read the VMFS-5 Upgrade Considerations document. Now, there are two methods for upgrading your VMFS datastore; online upgrade of by formating the LUN. I’m going to show you both, but let’s start with the simple one first, the online upgrade. Connect to your vCenter server and click the Datastores and Datastore Clusters icon from the Home page. Another method is to go to your ESXi hosts > Configuration > Storage and do it from here, but I prefer the other one, because I have all my datastores in one place.

Select the datastore you want to upgrade then go to the Configuration tab. Here all you have to do is click the Upgrade to VMFS-5 link.

One you click the link, a warning message is displayed telling that all the hosts must support VMFS-5. You get a green check mark if all the hosts connected to the datastore you want to upgrade support VMFS-5. Click OK to start the upgrade process.


Do this for the rest of you datastores.

Now…the second method and the recommended one is to delete the datastore you want to upgrade, then add it again to the inventory by formating it. If you use this method you get some additional differences (this was taken from the VMFS-5 Upgrade Considerations guide):

No Uniform Block Size
VMFS-5 upgraded from VMFS-3 continues to use the previous file-block size, which may be larger than the unified 1MB file-block size. This can lead to stranded/unused disk space when there are lots of small files on the datastore.
No New Sub-Block Size
VMFS-5 upgraded from VMFS-3 continues to use 64KB sub-blocks and not the new 8KB sub-blocks. This can also lead to stranded/unused disk space. The upgraded VMFS-5 also continues to use the original number of sub-blocks from the VMFS-3.
No Increase to the Maximum Number of Files per Datastore
VMFS-5 upgraded from VMFS-3 continues to have a file limit of 30,720 rather than new file limit of > 100,000 for newly created VMFS-5. This has an impact on the scalability of the file system.
Uses MBR
VMFS-5 upgraded from VMFS-3 continues to use MBR (Master Boot Record) partition type; when the VMFS-5 volume has grown beyond 2TB, it automatically and seamlessly switches from MBR to GPT (GUID Partition Table) with no impact on the running virtual machines.
Starts on Sector 128
VMFS-5 upgraded from VMFS-3 continues to have its partition starting on sector 128. Newly created VMFS-5 partitions will have their partition starting at sector 2048.

To do this, first migrate you VMs to another datastore, if you don’t want to lose them. Once this is done select you ESXi host, go to the Configuration tab > Storage, right-click the datastore and choose Delete. You can do this from the Datastores and Datastore Clusters page too, but this time I felt like do it from here .

If you get this message “The resource … is in use” when you try to delete the datastore, make sure the datastore is empty. This means, delete any existing files or folders (.vswp, .vmx, .nvram, folders) from the datstore.

The datastore is now deleted.

The next step is to add it again to the storage inventory. Since I’m in the Datastores and Datastore Clusters page, I’ll do it from here. Right-click the datacenter and choose Add Datastore.

Select the host where you want to add the datastore and click Next.

Since we are adding a LUN, leave the defaults here and continue.

Select the LUN from the list and continue the wizard.

We want to format it as VMFS-5, so again go with the defaults here.

Finish the wizard. As you can see the block size for the new datastore is now 1MB.

Want content like this delivered right to your

email inbox?

Leave a Reply

Your email address will not be published. Required fields are marked *