As with every conference these days this one was all about the “Cloud”. While the could can be confusing I was a tad enlightened about the direction of this “Cloud Computing” trend. Little bit of Infrastructure, some rigor and some smoke and mirrors and you have a cloud. Enough about the “Cloud”. Here is some technical information I picked up while at VMworld around tuning Linux VMs.
Align VM Disk.
If you align to 128 you are guaranteed to hit all storage vendors for alignment all the way to the NFS share or LUN.
New to RHEL 6 and EXT4 disks will automatically be aligned. Also if VMDKs are created from vCenter they are also auto aligned.
PVSCSI & VMXNET
Of course always use para-virt drivers where you can. RHEL 6 is due out with pvscsi and vmxnet drivers baked in so we should have less problems with drivers not loading after kernel updates.
Disable VMtools time sync. and enable the divider option in the kernel. Here is the KB article on this practice.
http://kb.vmware.com/selfservice/microsites/microsite.do?cmd=displayKC&docType=kc&externalId=1006427&sliceId=1&docTypeID=DT_KB_1_1
Play with elevator tuning used for I/O scheduling. We did work with this in our environment but found no significant results. Perhaps this will only be a viable option on high I/O VMs. Also can turn off atime and diratime for filesystems that may not be necessary. This could break backups so use with caution. It will likely break mail so avoid doing this in /var/spool.
To gain better De-Dup results “zero out” unused sectors on disk. Blog article talks about this during VCB snapshotting process.
http://blog.core-it.com.au/?p=298
Disable all readahead services.
Linux VMs need a udev tweak to allow for hot-adding of vCPUs. Currently we are running vKernel for our capacity analysis and planning. It can auto add memory, CPUs and disk for guests that support it. Here is the KB article on how to enable hot-add of vCPUs.
http://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&docType=kc&externalId=1015501&sliceId=1&docTypeID=DT_KB_1_1&dialogID=108604667&stateId=1%200%20108606518
And as all great tuning documents, I will add the disclaimer that “milage will vary in your environment.”