A quick intro: my name is Ian Gibbs, and I’m a former VMware PS Consultant like Duncan currently is. I’ve just transitioned to a role with a VMware customer where I’m responsible for delivering VMware View for real to 3000 users. Duncan has kindly invited me to share the things I learn with the world. I hope to post some scripts and things I create to help make life easier for you all.
This week I have been redesigning the storage layout for the View implementation. There’ll be a few other posts to come on this as it has turned out to be a massive topic, but this sub-task has been to determine the rate at which the vClone disks are growing so that I can size the datastores properly. We have around 100 pilot VMs and I wanted to see how big each vClone disk was versus its age. This turns out to be harder than you’d imagine, as ESX/Linux/Unix file systems don’t store file creation times. Anyway, a script was required and duly created. I hope you too find it useful. To use it:
- Download the script here
- Get the script on to an ESX server that can see the DS that contains the VMs you are interested in
- Mark it executable with chmod +x <script-filename>
- Install the bc RPM from here
- Run it and redirect the output to a CSV file.
My results average out roughly like this:
3hrs: 560Mb
20hrs: 700Mb
90hrs: 850Mb
We’ve moved the pagefile off C: to the UDD so my results will probably be lower than yours. Now to find out why it goes to half a gig so quickly…
what do you mean by UDD ?
I believe UDD stands for user data disk.
Welcome Ian!
Ian,
That growth is on shared storage correct? Do you plan on doing any testing with deduplication on after you find out what’s growing? Or is it on already?
Effectively I already have dedupe through the fact that I have a 600Mb file representing a 7Gb HDD. There’d be very little in common between this and other deltas, so we aren’t planning to enable storage dedupe as well.
Hi Ian,
UDDs growing is a bitch, but I reckon this is because the NTFS filesystem will always write to available zero’d blocks before it writes to blocks containing deleted files.
Check out Stu from vinternals’ post here, discussing it:
http://vinternals.com/2008/12/vmware-view-linked-clones-not-a-panacea-for-vdi-storage-pain/
Hope you’re enjoying the new role… we miss ya
Jeff O’Connor
That’s precisely the shortcoming about vClones that Quest has been pitching for the last few months. They say they’ve been working on an alternative to be expected in upcoming versions of vWorkspace.
The interpreter you are referencing is /bin/bash. Bash is not installed by default, its /bin/sh. Do I need bash installed?
Fixed the issue, but my question is, how does it know the age of the disk? I have 40 users in a desktop pool, set to refresh on log off, I am assuming if it refreshes then its not going to show good data. Can I set this to run every hour during their 8hr work period?
It reads the last modified time of the vmx file associated with the delta disk. _Usually_ this will be the time the delta disk was last refreshed, recomposed, or created. If one of these has ocurred, then the delta disk will have been reset to 0, so you do want the age from that time. It’s good data alright – it’s the point of the script.
Pretty sure bash is installed in ESX by default as the default shell, isn’t it? On hols right now so I can’t confirm.