The company that I work for has decided to get all of the virtualization system engineers together in order to discuss best practices and to help standardize how we setup customer systems. This week was the first week and we started off talking about something we have dealt with since we started installing virtualization solutions.
Most of our customers come to us because they know we will provide a great solution that will keep their business running without them having to be full time IT people. Most of these companies have small (if any) IT staff. So back to the title… should their SAN (for virtualization) be thick or thin provisioned? We all know the pro’s of thin, but what about the customer who never logs into their SAN to see how things are going ? What happens when they run that defrag without knowing, or upload a bunch of new data ?
Most of the time when we thin provision, we end up over provisioning as well… here is where the problem enters. If we over provision an HP P4000 SAN (or probably any SAN for that matter) and it becomes full it will shutdown, which will take down all of the virtual servers on the SAN. So instead of thin provisioning at a SAN level we are considering thick provisioning LUN’s all into a standard size (500GB, or 1TB, or 2TB) and then presenting those LUNs to VMware (or Xenserver). At that point we would thin provision at the Virtual machine level.
What we feel that this will add is more visibility to the true utilization of their SAN. Most of the small IT staff’s that we work with use the VMware or Xen Center Client a lot, and have visibility to how full their datastores are getting by using the VMware or xen clients. And they dont want to have to check multiple places to see how much free space they have.
So I pose the question to you, my peers, what is good or bad about this idea? What do you do? How would you handle a situation where the customer expects it to “just work” without monitoring 10 different devices because they are the CFO and not the IT person?
Thank you for your comments in advance, and I will continue to post other topics that our group discusses down the road.
Justin, I am currently debating the same idea. I have originally started thin provisioning my storage and also thin provisioning on the VMware side. However, I have now over-provisioned things on the storage side, which leads me to believe that the best way is to thick provision on the storage side and thin on the VMware side. This way you don’t run the risk of shutting down a particular LUN and as a result taking down additional VM’s with it. In the end what did you decide?
We do exactly that, unless the customer specifies otherwise. Thick on the SAN and thin inside of the VM
This is very useful, I think this will come in handy for me at work
I have just inherited an HP 4000 Left Hand SAN where every volume has been thin provisioned, and guess what the SAN is now over provisoned and I am in the hot seat trying to sort it out.
If I ever have to setup a SAN from the start it will be thick provisioning at the SAN level for sure, its a *loody nightmare to sort this sort of thing out.
Hey Dave. IF you have some local datastores on your VMware boxes your best bet is to storage vmotion all the VM’s off of a lun and then delete the empty lun… this will release all of that space back into the pool. Then assuming you can storage vmotion everything out of the other luns, keep shuffeling things around, because when your storage vmotion and select “Thin Provision” in vmware that will get rid of any white space that was there.
This will also let you recreate your LUN’s as thick and avoid the problem in the future.
Other options would be to bite off another 20k for another node, or maybe stand up a temporary cluster with the lefthand VSA ?
Thanks Justin, is it possible for you to give me a step by step set of instructions as these VM’s are two Exchange Servers and I need to be extra careful or my jon prospects may not be good if you know what I mean.
We have always let the storage stay as thin provisioned and the VM’s are thick lazy zero. If storage is not monitored by the vendor or the support partner then only provisioning LUNS to the available size of the SAN would be a solution. Then in VMware, as you provision vm’s you can see what the Datastore utilisation is (And , this should reflect the usage on the SAN as you have provisioned Datastores = Capacity of the SAN or slightly smaller). Thin provisioning a VM’s disks is not without its own issues, such as, the perception that a datastore has plenty of space, so, you build more and more vm’s on it. One day, if a VM suddenly needs the full capacity of its provisioned disks, you could run into issues where the datastore has insufficient space to satisfy the Vm’s requirements. This is bad for business and bad for customers.
So personally, eager lazy zero disks in a vm, thin on back end, provision only as much as the capacity is available.