Thin provisioning is often touted as a best practice for virtualization storage, because you can shrink and expand virtual hard disk files to accommodate storage needs. But watch out for overprovisioning, which can reduce physical capacity and harm virtualization storage performance.
Thin provisioning assigns a logical unit number (LUN) more logical than physical disk space. For example, a storage system may allocate only 200 MB to a 10 GB LUN, and more physical disk space can be added later.
While virtualization doesn't change this approach, a virtualization storage system that creates and manages the new LUNs with a high level of automation can run low on physical disk capacity, compromising application performance and stability. If you implement thin provisioning, closely track thin-provisioned LUNs, and pay attention to capacity alerts.
How thin provisioning affects lifecycle planning
Thin provisioning technology also plays an important role in storage lifecycle planning, whose goal is to ensure an adequate level of performance and availability for each LUN. For example, a new LUN for a critical business application may reside on high-performance Fibre Channel storage and then migrate to near-line Serial Advanced Technology Attachment (SATA) or archival storage as the LUN's importance wanes.
"With traditional storage ... applying a storage lifecycle was disruptive and painful," said Tony Palmer, senior engineer and analyst at Enterprise Strategy Group. Palmer explained that the nondisruptive migration capabilities of modern virtualization storage can simplify lifecycle planning and implementation. It's important to verify that enough storage is available on the destination storage pool.
Moving LUNs is considerably easier with virtualization. Carelessly creating new virtual LUNs, however, can result in storage sprawl that, when combined with overprovisioning, can cause unexpected virtualization storage shortages and complicate migrations. Consequently, strictly follow business policies and practices that relate to virtualization storage management.
In the past, customers had to predict their storage growth far in advance. For obvious reasons, many enterprises were risk-averse and preferred to provision more storage than was actually needed. The problem was that many systems lacked the capacity to dynamically grow partitions and file systems without a maintenance window. With the new generation of virtualization storage systems and hypervisors, as well as thin provisioning best practices, much of these capacity questions can be answered. If customers do go down this route, the actual disk consumption needs to be closely monitored -- both at the VM level and at the storage-array level.
Fortunately, both storage and virtualization vendors offer plenty of alarms to warn administrators of impending problems. Although thin virtual disks and thin LUNs are wonderfully efficient, remember that you cannot write to thin air. For a block to be written to disk, the free physical disk space needs to be there. With this configuration, alarms, alerts and continual monitoring are absolute musts when thin provisioning comes into play.
A new way of thin provisioning
Previously, virtualization administrators were limited to using thin provisioning just at the storage array, but with recent enhancements in virtual disk formats, many customers are now considering "thin on thin" -- the process of using thin virtual disks on thinly provisioned volumes or LUNs. This offers the opportunity to drive down storage costs by storing only blocks that contain data, rather than empty zero blocks. At the same time, thin on thin addresses the biggest "Goldilocks" questions of all: How big should the virtual disk be, and how big should the volume or LUN it is stored on be?
One anxiety about running an infrastructure with thin on thin is the potential for performance degradation. Many organizations assume that such a configuration will result in poor performance of the virtualization storage, but several virtualization vendors have demonstrated that a thin virtual disk can offer the same level of performance as a flat contiguous virtual disk file.
If virtualization managers follow best practices for the virtualization file system and thin provisioning, they can maintain performance quality. Using a large block size, for instance, will greatly reduce the I/O operations per second (IOPS) generated by the virtual disk file as it grows on demand.
In the longer term, virtualization vendors will likely work even more closely with storage vendors in developing and improving application programming interfaces (APIs) to allow for greater integration between the two layers and improving virtualization storage. This can be seen in VMware's vStorage APIs for Array Integration (VAAI) project, which allows the hypervisor to communicate to the storage array in a more intelligent way.
Communication will likely go in the other direction -- from the storage vendor up to the virtualization layer. In the case of thin provisioning, the storage array will be able to send an alert if you are running out of physical disk space, and it might even move VMs from one volume to another to prevent an outage caused by a lack of free space.