Resource pools allow you to perform resource allocation depending on the needs of different groups. You can create a hierarchy of child resource pools for the top-level compute resource pool, called Compute-ResourcePool by default. You can specify resource settings when you create a resource pool, and you can change those settings later.

For example, assume a host has a number of virtual machines. The marketing department uses three of the virtual machines and the QA department uses two virtual machines. Because the QA department needs larger amounts of CPU and memory, the administrator creates one resource pool for each group. The administrator sets CPU Shares to High for the QA department pool and to Normal for the marketing department pool so that the QA department users can run automated tests. The second resource pool with fewer CPU and memory resources is sufficient for the lighter load of the marketing staff. Whenever the QA department is not fully using its allocation, the marketing department can use the available resources.

The numbers in the following figure show the effective allocations to the resource pools.

Figure 1. Parent Resource Pools and Child Resource Pools
Two child resource pool share the resources of the parent resource pool.


  1. Start the task.
    Task Steps
    Create a resource pool Right-click the parent resource pool and select New Resource Pool.
    Edit resource pool settings Right-click a resource pool and select Edit Resource Settings.
    Note: If you edit the settings of a system-defined resource pools, the changes do not take effect.
  2. Specify how to allocate CPU and memory resources.
    Option Description
    Name Name for this resource pool.
    Shares Specify shares for this resource pool with respect to the parent’s total resources. Sibling resource pools share resources according to their relative share values bounded by the reservation and limit.
    • Select Low, Normal, or High to specify share values respectively in a 1:2:4 ratio.
    • Select Custom to give each virtual machine a specific number of shares, which expresses a proportional weight.
    Reservation Specify a guaranteed CPU or memory allocation for this resource pool. Defaults to 0.

    A nonzero reservation is subtracted from the unreserved resources of the parent (host or resource pool). The resources are considered reserved, regardless of whether virtual machines are associated with the resource pool.

    Expandable Reservation When the check box is selected (default), expandable reservations are considered during admission control.

    If you power on a virtual machine in this resource pool, and the combined reservations of the virtual machines are larger than the reservation of the resource pool, the resource pool can use resources from its parent or ancestors.

    Limit Specify the upper limit for this resource pool’s CPU or memory allocation. You can usually accept the default (Unlimited).

    To specify a limit, deselect the Unlimited check box.

  3. Click OK.