VMware

VMware ESX Server 2.0

Features | Documentation | Knowledge Base | Discussion Forums

previous Prev   Contents   Last   Next next

VMware ESX Server Resource Management

VMware ESX Server Resource Management

VMware ESX Server allows you to optimize the performance of your virtual machines by managing a virtual machine's resource allocations. You can control a virtual machine's access to:

  • CPU time
  • Memory space
  • Network bandwidth
  • Disk bandwidth

Note: You must be the root user to manage virtual machine resources.

You can manage virtual machine resource allocations through the VMware Management Interface, from the procfs interface on the service console, and the VMware Scripting API. The first two methods are covered in this chapter, while the Scripting API is described in the VMware Scripting API User's Manual at www.vmware.com/support/developer.

Virtual Machine Resource Management

Virtual Machine Resource Management

ESX Server uses a proportional share mechanism to allocate CPU, memory, and disk resources when multiple virtual machines are contending for the same resource. Network bandwidth is controlled with network traffic shaping.

CPU and memory resource each offer an additional dimension of control. For CPU management, you can specify a minimum and maximum percentage of a single physical CPU's processing power for each virtual machine. You may also specify CPU shares and restrict a virtual machine to run on a certain set of physical CPUs (CPU scheduling affinity). For more information, see Admission Control Policy.

Similarly, you may specify minimum and maximum memory sizes, as well as memory shares, for each virtual machine. Your level of control is greatly impaired, however, if you fail to install VMware Tools in each virtual machine or if you fail to set up the VMkernel swap space. For more information, see Allocating Memory Resources.

Note: You should not have to adjust resources for every virtual machine you create. We suggest that you determine which virtual machines are performance sensitive and adjust these accordingly.

Service Console Resource Management

Service Console Resource Management

The service console receives 2000 CPU shares and has a minimum CPU percentage of 8 percent, by default. In most cases, this should be an appropriate allocation, since the service console should not be used for CPU-intensive tasks.

If you do find it necessary to adjust the service console's allocation of CPU shares, you can use the VMware Management Interface. See Configuring the Service Console.

Depending on the number of virtual machines you plan to run concurrently, we have approximate guidelines for the memory you should allocate to the service console. For more information, see Service Console Memory.

Using ESX Server Resource Variables

Using ESX Server Resource Variables

The majority of this chapter describes the different parameters you can use to optimize resources on ESX Server. We include information on the various algorithms and policies ESX Server uses to determine resource allocation.

Note: In the next section, we provide a practical description of resource optimization, based on the behavior of ESX Server and its virtual machines. We provide some general guidelines on deciding what resource variables to optimize and other general tips to improve performance on ESX Server.

This chapter contains the following:

previous Prev   Contents   Last   Next next