Configuring Priority Shares for Resource PoolsLast Updated December 16, 2024
In cases of resource contention, data center hosts need a way to arbitrate between
competing virtual machines. You can configure the shares settings of a virtual machine to
set its priority relative to its siblings. You can configure the shares settings of a
resource pool to affect the priorities of all virtual machines within the resource pool, as
a group.
The following illustration shows a standalone host that has several
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. When there is
resource contention because running virtual machines demand more resources than are
available from the host, the resource shares configuration guides arbitration between
the competing virtual machines.
Allocating Resources to Resource Pools

You have two options for priority shares configuration that cause the priorities to be
applied in different ways. The fixed shares option limits the adverse performance impact
of resource contention to a single resource pool and all its descendants. The scalable
shares option distributes the performance impact across all resource pools, in
proportion to their priority levels.
The chief benefit of configuring fixed shares
for a parent resource pool is the predictability of performance for virtual machines
within its child resource pools. You can know in advance that its virtual machines can
demand a fixed fraction of a virtual resource available from a host or cluster. The
drawback of configuring fixed shares is that adding virtual machines to a resource pool
impacts the performance of all virtual machines in the same pool and its descendants
because the resource pool is not entitled to allocate additional resources.
The chief benefit of configuring scalable
shares for a parent resource pool is that resource allocation during contention is
adjusted at run time to achieve a fair allocation to virtual machines beyond the
boundary of a single resource pool. In effect, the child pool's resource entitlement
expands to accommodate more virtual machines as they are added to the pool. The drawback
of configuring scalable shares is that a child resource pool cannot isolate its virtual
machines from the demands of virtual machines in other pools that draw from the same
scalable parent resource pool.