Shared Resources and Reservations
When configuring virtual machines, the total CPU resources needed by the virtual machines running on the system should not exceed the CPU capacity of the host. If the host CPU capacity is overloaded, the performance of individual virtual machines may degrade. When approaching the limit for the number of virtual machine on an ESX host, use CPU reservations to guarantee 100% CPU availability to the console.
You should allocate enough memory to hold the working set of applications that you will run on the virtual machine, thus minimizing swapping, but avoid over-allocating memory. Allocating more memory than needed unnecessarily increases the virtual machine memory overhead, thus using up memory that could be used to support more virtual machines. Swapping can be avoided in a specific virtual machine by using the vSphere Client to reserve memory for that virtual machine at least equal in size to the machine’s active working set.
We recommend VMFS for most virtual disk storage, because VMFS provides much more flexibility, and in most cases performs just as well as RDMs. The alignment of your file system partitions can impact performance. Similar to other disk-based file systems, VMFS suffers a penalty when the partition is unaligned.
Using the vSphere Client to create VMFS partitions avoids this problem because it automatically aligns the partitions along the 64KB boundary. For more information, refer to the documentation from the operating system vendor regarding appropriate tools to use as well as recommendations from the array vendor.
When configuring the EcoSys virtual server, we recommend setting reservations to specify the minimum acceptable amount of CPU or memory.
Measuring Performance When Using Shared Resources
It is a good idea to periodically monitor the CPU usage of the host. This can be done through the vSphere Client or by using esxtop or resextop. You can monitor I/O latency statistics using esxtop (or resxtop), which reports device latency, time spent in the kernel, and latency seen by the guest. Make sure I/O is not queuing up in the VMkernel by checking the number of queued commands reported by esxtop (or resxtop).
Various platforms have their own proprietary tools for monitoring systems. Consult your infrastructure documentation for detailed information on how to monitor CPU, memory, disk I/O, storage utilization and network traffic.