Here's one of the big mysteries of the server virtualization and cloud computing world: why are so many people turning their noses up at thin provisioning their storage in virtualized environments?
Let's face it, virtualization technology can put a lot of pressure on storage. There are plenty of reasons for that, including virtual machine sprawl and virtual machine gold images that are configured with far, far more storage than is required for most needs.
If you're not careful the result of this pressure can be increased storage costs that more than outweigh the economic benefits of server virtualization and private cloud computing setups, particularly benefits such as lower server hardware, power and cooling costs.
In many cases thin provisioning can dramatically ease the pressure on storage resources. In the examples above a large percentage of the storage allocated to virtual machines would never be utilized, but with thin provisioning it would still be available for other applications that need it.
And yet I recently heard through the grapevine from one of the big storage vendors something genuinely surprising: only 50% of the company's customers are actually using thin provisioning. While it is available to the customers as a feature, because of conservatism — or perhaps some other reason — it has simply never been switched on.
What on earth is going on here?
Thin provisioning is really just another term for over provisioning — handing out entitlements to more of a resource than you actually have at your disposal, which in this case is storage — and hoping that everyone doesn't ask for it at once. Of course, if that does happen you are basically stuffed, as virtual machines will fall over like dominoes.
While it sounds risky when you put it like that, in actuality over-provisioning happens everywhere, all of the time. Consider your bank as an example — if everyone asked for their money back at the same time, the bank certainly couldn't give it to all the customers. And think about old-fashioned dial-up ISPs — if all their subscribers tried to dial up at the same time the ISP wouldn't have enough modems to connect them all.
Closer to home, the top of the rack Ethernet switches that connect the virtualization hosts in your server cabinets have far more capacity between individual servers and the switch than they have uplink capacity between the switch and the rest of your network infrastructure.
When you put it like that, it's clear that there's nothing inherently risky about thin provisioning — as long as you take the time to understand your virtualized infrastructure or your private cloud computing environment and make sure that you get your thin provisioning levels right. That's why banks don't go bust very frequently, and it's why thin provisioning should be used most of the time.
Most but not all of the time, that is. Some virtualized applications simply won't work well with thin provisioning, and some have storage requirements that are too unpredictable to enable you to get any benefit from thin provisioning.
And don't forget that your storage systems — not to mention your hypervisors — may already be struggling with the intense I/O activity that high consolidation ratios on your server virtualization hosts can lead to. In these cases thin provisioning could simply exacerbate the problem.
But let's not lose sight of this simple truth: server virtualization and cloud computing can cause storage problems, and many of these can be eased by the sensible use of thin provisioning. If you've got it and you're not making use of it in your virtualized environment, perhaps it's time to find out why not.
Paul Rubens is a technology journalist and contributor to ServerWatch, EnterpriseNetworkingPlanet and EnterpriseMobileToday. He has also covered technology for international newspapers and magazines including The Economist and The Financial Times since 1991.