This objective is focused on the VMs rather than the hosts but there’s still a large overlap between this objective and the previous one.
Knowledge
- Compare and contrast virtual and physical hardware resources
- Identify VMware memory management techniques
- Identify VMware CPU load balancing techniques
- Identify pre?requisites for Hot Add features
Skills and Abilities
- Calculate available resources
- Properly size a Virtual Machine based on application workload
- Configure large memory pages
- Understand appropriate use cases for CPU affinity
Tools & learning resources
- Product Documentation
- vSphere Client
- Performance Charts
- vSphere CLI
- resxtop/esxtop
- VMworld 2010 session TA7750 Understanding Virtualisation Memory Management (subscription required)
- VMware’s Performance Best Practices white paper
Identify memory management techniques
The theory – read the following blogposts;
- Frank Denneman’s impact of memory reservations
- Duncan Epping’s ‘memory limits’ post (and work your way through the comments!)
The following memory mechanisms were covered in section 3.1 so I won’t duplicate;
- transparent page sharing
- ballooning (via VMTools)
- memory compression (vSphere 4.1 onwards)
- virtual swap files
- NUMA
There are also various mechanisms for controlling memory allocations to VMs;
- reservations and limitations
- shares – disk, CPU and memory
- resource pools (in clusters)
Disable unnecessary devices in the VM settings (floppy drive, USB controllers, extra NICs etc) as they have a memory overhead.