VMware supports flash storage devices in several different areas, but it's important for IT administrators to estimate...
solid-state drive lifespan and keep an eye on program/erase cycles.
The most common use for VMware flash storage is creating regular Virtual Machine File System (VMFS) data stores as opposed to creating data stores on regular hard disk drives (HDDs). Flash-based VMFS data stores can store VMs and provide storage for ESXi's Host Swap Cache.
Flash storage is also required to create and deploy virtual SAN (vSAN) instances. IT administrators can also use flash storage in a virtual flash resource, which can aggregate multiple local flash devices on an ESXi host into a cache using VMware's Virtual Flash File System. This enables the virtual flash resource to serve as a virtual flash read cache for VMs, or as an ESXi Host Swap Cache -- instead of using VMFS data stores -- and enables it to interoperate with compatible storage subsystems to provide an I/O caching filter.
Important considerations for VMware flash storage
One of the biggest issues with using VMware flash storage is the proper identification of those flash devices. Flash technology is moderately mature, but not all flash storage manufacturers use the same identification mechanisms or protocols. The most common identification mechanism uses T10 storage industry standards. ESXi and some guest OSes use the same protocol to find and characterize flash devices before use.
If ESXi or the OS can't identify the flash devices, they can't be used for flash-dependent tasks on the ESXi host system. The devices might still be recognized as conventional HDDs, however. System administrators can manually mark that storage device as flash through management tools such as vSphere Client. For example, marking an unidentified device as local flash makes it available for flash-dependent tasks, such as in vSAN and as a virtual flash resource. Storage vendors can provide more information about device detection and compatibility for VMware flash storage.
Unlike conventional hard disk drives, flash devices possess a finite working life. The nonvolatile semiconductor circuits that retain data can only be erased and rewritten a limited number of times before they wear out and start to fail. This creates a growing number of bit failures on flash devices. Once written, however, flash devices can be read as many times as desired.
How to calculate flash lifespan
Consequently, flash devices require careful lifecycle estimation and monitoring. ESXi provides the esxcli command to monitor VMware flash storage and report details such as media wear, temperature and reallocated sectors. The trick is for system administrators to estimate the actual lifetime of a flash device based on the number of real writes over time. A flash device vendor can estimate lifetime under ideal conditions, but actual usage can radically affect the flash device's lifespan.
For example, admins can use the esxcli command on a VMware flash storage device and note the number of blocks written since the ESXI host was last restarted. Multiply the number of blocks written by 512 -- because there are 512 bytes per block -- and then divide that by one billion to find the number of gigabytes. Now, divide that figure by the number of days since the ESXi host was last rebooted. This yields the actual average of flash device data writes per day.
As an example, suppose esxcli reports 635,902,400 blocks written since the system was last restarted 12 days ago. The actual usage of the flash device would be:
([635,902,400 blocks * 512 bytes per block] / 1,000,000,000 bytes per GB) / 12 days = approximately 27 GB per day
This is about 325.6 GB / 12 days, which would be approximately 27 GB per day of real write usage.
Now consider how this actual usage relates to the vendor's estimates. For example, if the vendor guarantees the flash device for 15 GB of writes per day for five years, a simple ratio would yield the actual estimated device lifetime: vendor writes per day multiplied by vendor life years divided by actual writes per day equals estimated device life in years:
(15 GB per day * 5 years) / 27 GB per day = approximately 2.8 years
In this example, the flash device experiences heavy write usage, so it will suffer a much shorter working life than the manufacturer suggests. Of course, this is just one example taken over a relatively short period. Administrators can repeat this exercise periodically. Figures taken over a much longer period -- perhaps three to six months rather than 12 days -- yield a more reliable average. IT leaders can use these results to plan and budget for a VMware flash storage replacement.
This example also doesn't consider other flash reliability techniques. For example, wear leveling works to spread out writes across the entire device so all of the device's bits are written before any bits are erased and rewritten. This equalizes the number of writes across the entire device and prevents any hot spots where the same bits are erased and rewritten frequently.
Could your VMware shop benefit from storage acceleration?
Thick provisioning can lead to storage under-utilization, but thin provisioning can cause over-allocation
Learn when to use RDM and what potential pitfalls to look out for
Dig Deeper on Selecting storage and hardware for VMware environments
Related Q&A from Stephen J. Bigelow
Just because software passes functional tests doesn't mean it works. Dig into stress, load, endurance and other performance tests, and their ... Continue Reading
Don't neglect form factor as part of your data center server selection. Instead, figure out what type of environment you need and learn which server ... Continue Reading
Learn how load balancing in the cloud differs from a traditional network traffic distribution, and explore the different services available from AWS,... Continue Reading