If your vSphere environment has been around longer than a year or two, it is very possible you still have some datastores that are using VMFS 3.x.

This in it of itself isn’t a bad thing, but you are missing out on some of the great features that came out in VMFS 5.x

As Cormac lists the enhancements in this article:

VMFS-5 Enhancements

  • Unified 1MB File Block Size. Previous versions of VMFS used 1,2,4 or 8MB file blocks. These larger blocks were needed to create large files (>256GB). These large blocks are no longer needed for large files on VMFS-5. Very large files can now be created on VMFS-5 using 1MB file blocks.

  • Large Single Extent Volumes. In previous versions of VMFS, the largest single extent was 2TB. With VMFS-5, this limit has been increased to ~ 60TB.

  • Smaller Sub-Block. VMFS-5 introduces a smaller sub-block. This is now 8KB rather than the 64KB we had in previous versions. Now small files < 8KB (but > 1KB) in size will only consume 8KB rather than 64KB. This will reduce the amount of disk space being stranded by small files.

  • Small File Support. VMFS-5 introduces support for very small files. For files less than or equal to 1KB, VMFS-5 uses the file descriptor location in the metadata for storage rather than file blocks. When they grow above 1KB, these files will then start to use the new 8KB sub blocks. This will again reduce the amount of disk space being stranded by very small files.

  • Increased File Count. VMFS-5 introduces support for greater than 100,000 files, a three-fold increase on the number of files supported on VMFS-3, which was ~ 30,000.

  • ATS Enhancement. This Hardware Acceleration primitive, Atomic Test & Set (ATS), is now used throughout VMFS-5 for file locking. ATS is part of the VAAI (vSphere Storage APIs for Array Integration), and will be revisited in a future posting. This enhancement improves the file locking performance over previous versions of VMFS.

Granted if you look in the vSphere client under the “Configuration” tab for the datastore you can see the VMFS version


But that doesn’t allow you to quickly check all your datastores’ VMFS version in one go. Fortunately there is a quick PowerCLI one-liner, that will solve this for us.

get-datastore | sort filesystemversion -descending |Format-table name, filesystemversion, freespacegb

Which in practice looks a bit like this…


As you can see, I at one time or another upgraded  some of my datastores(or they’re just new ones), but I still haven’t finished upgrading all of them 🙁

You can do in place upgrades or wipe and recreate the datatstores. Cormac’s link above also talks about those two different options.  If choosing the latter, you could always use my Upgrade-Datastore script to help 🙂

Hope this helps!!!


Leave a Reply