VMware thin provisioning and thick provisioning are both supported in vSphere. Thick provisioning can lead to storage...
underutilization, but thin provisioning requires that IT administrators keep a watchful eye on how much storage an application needs.
Thick provisioning is the upfront allocation of storage capacity to a logical unit number (LUN). For example, if an administrator decides to provision 10 GB for a LUN, all 10 GB are set aside for that LUN when it is initially created, and all of that provisioned capacity remains committed to that LUN regardless of how much storage the associated application uses. In practice, it may take months or even years for an application to consume all of the capacity set aside for it.
In the meantime, that provisioned -- but unused -- storage capacity is underutilized. For this reason, thick provisioning presents a quandary for the business. Storage can be costly, and provisioning storage that may remain underused for a prolonged period of time is a commitment of capital that a business would likely rather have available to spend on other projects.
This sparked the introduction of thin provisioning, which creates a logical volume of the requested capacity, but only commits a small percentage of actual storage against the total size. VMware thin provisioning enables a business to create large volumes for enterprise applications, but only provide a fraction of the actual storage upfront, and then add more actual storage over time -- up to the total capacity that the volume was provisioned for.
Over-subscribing storage resources means thin provisioning makes storage more efficient, but organizations can run out of storage faster than they might expect.
Consider the 10 GB LUN from the previous example. In a thinly provisioned environment, the 10 GB LUN might only start with 1 GB of real storage. An application thinks it has a LUN of a provisioned capacity -- such as the 10 GB volume -- but only a portion of real storage is assigned to it. Administrators can add more actual storage over time as the LUN fills.
Suppose that initial 1 GB of real storage approaches full use in 12 months. Administrators can add another 1 GB to the LUN. The application associated with the LUN still thinks it has 10 GB to work with, but now, the business only commits the expense of 2 GB to the LUN. This enables the business to mitigate storage investments and keep storage utilization high, while still supporting application needs over time. ESXi supports VMware thin provisioning within the storage subsystem and at the virtual disk level.
But VMware thin provisioning also enables storage over-subscription; it is possible to thin provision more logical storage capacity than there is actual physical storage to cover it. For example, it might be possible to create ten 20 GB LUNs, even though there might only be 100 GB of physical storage capacity present in the data center. This poses a serious risk for an organization.
If a thinly provisioned LUN exhausts its physical storage capacity, the application using the LUN may become unusable. And without more physical storage to inflate the LUN, the effects on the application and the business may be seriously disruptive.
VMware shops can work to avoid such risks by keeping careful track of storage capacity and commitments, and by setting alarms to indicate when provisioned storage capacity reaches critical thresholds.
VMware Virtual Machine File System data stores only understand the logical size of a thinly provisioned LUN, but the use of the vStorage API for Array Integration enables the ESXi host to communicate the underlying storage details to the storage subsystems. This helps support accurate storage monitoring and reporting so administrators can take timely action to ensure adequate physical storage capacity is available, and to commit more physical storage to the LUNs that need it.
Storage acceleration lets ESXi hosts quickly create and copy thickly provisioned virtual disks and machines
Benefits and drawbacks of RDM
What do I need to know about flash storage in VMware environments?
Dig Deeper on Creating and upgrading VMware servers and VMs
Related Q&A from Stephen J. Bigelow
Regression tests and UAT ensure software quality and both require a sizeable investment. Learn when and how to perform each one, and some tips to get... Continue Reading
Learn the meaning of functional vs. nonfunctional requirements in software engineering, with helpful examples. Then, see how to write both and build ... Continue Reading
Just because software passes functional tests doesn't mean it works. Dig into stress, load, endurance and other performance tests, and their ... Continue Reading