Review - vSphere High Performance Cookbook
I just finished reading vSphere High Performance Cookbook just released from Packt publishing. This is short and very readable guide that has some of the only coverage I've seen published about understanding performance graphs and extensive instructions on the use of esxtop. The coverage isn't just an explanation but detailed instructions on how to setup the performance graphs to display the necessary information for review. One of the difficult parts of understanding VMware is that a change in one place or resource may affect many other areas. This book does a good job at qualitatively explaining these relationships between VM cpu, VM memory, the cpu scheduler, resource pools, shares, reservations and limits.
Anyone using VMware quickly realizes that Memory management and shortages are one of the most common tasks of a VMware administrator. Chapter 2 covers memory performance and design considerations and goes into extensive detail about the differences between host swapping, guest swapping, the memory balloon driver and how all of these affect performance. This is all tied back into customization of performance graphs to get the needed information to make these decisions. The chapter also makes the point that some memory conditions may be based on past occurrences, not necessarly present conditions. For instance high host consumed memory might be a result of high VM demand in the past, and not necessarily an indication that you have a current issue as memory isn't reclaimed by the host unless needed elsewhere.
The cookbook format used is a little misleading however, as many of the recipes are really lab exercises that you would not actually implement. Indeed many of the changes to advanced settings should not be done on production systems without consulting VMware support. There really should be a big warning to only try many of these changes in a lab environment.
Networking is covered in chapter 3, but is somewhat misleading in recommending TCP checksum offload when that feature is not commonly used by most customers. The other parts of the chapter have very useful coverage of Nic teaming, fail-over, and the vDS Load based teaming feature that is perhaps the best overall solution if you have Enterprise Plus licensing.
Despite a few shortcomings, this cookbook covers a lot of very useful information that you can skim through easily in one evening and then zero in on more specific areas to troubleshoot or improve your actual environment.