In the advanced settings, you can configure the resource allocation settings (shares, reservation, and limit) to determine the amount of CPU, memory, and storage resources provided for a virtual machine. You can also configure metadata for the virtual machine.
Resource Allocation Overview
Use the resource allocation settings (shares, reservation, and limit) to determine the amount of CPU, memory, and storage resources provided for a virtual machine. Users have several options for allocating resources.
- Ensure that a certain amount of memory for a virtual machine is provided by the virtual datacenter.
- Guarantee that a particular virtual machine is always allocated a higher percentage of the virtual datacenter resources than other virtual machines.
- Set an upper bound on the resources that can be allocated to a virtual machine.
Resource Allocation Shares
Shares specify the relative importance of a virtual machine within a virtual datacenter. If a virtual machine has twice as many shares of a resource as another virtual machine, it is entitled to consume twice as much of that resource when these two virtual machines are competing for resources. Shares are typically specified as High, Normal, or Low and these values specify share values with a 4:2:1 ratio, respectively. You can also select Custom to assign a specific number of shares (which expresses a proportional weight) to each virtual machine. When you assign shares to a virtual machine, you always specify the priority for that virtual machine relative to other powered-on virtual machines.
|Setting||CPU Share Values||Memory Share Values|
|High||2000 shares per virtual CPU||20 shares per megabyte of configured virtual machine memory|
|Normal||1000 shares per virtual CPU||10 shares per megabyte of configured virtual machine memory|
|Low||500 shares per virtual CPU||5 shares per megabyte of configured virtual machine memory|
Resource Allocation Reservation
A reservation specifies the guaranteed minimum allocation for a virtual machine.
vCloud Director allows you to power on a virtual machine only if there are enough unreserved resources to satisfy the reservation of the virtual machine. The virtual datacenter guarantees that amount even when its resources are heavily loaded. The reservation is expressed in concrete units (megahertz or megabytes).
For example, assume you have 2GHz available and specify a reservation of 1GHz for VM1 and 1GHz for VM2. Now each virtual machine is guaranteed to get 1GHz if it needs it. However, if VM1 is using only 500MHz, VM2 can use 1.5GHz.
Reservation defaults to 0. You can specify a reservation if you need to guarantee that the minimum required amounts of CPU or memory are always available to the virtual machine.
Resource Allocation Limit
Limit specifies an upper bound for CPU and memory resources that can be allocated to a virtual machine.
A virtual datacenter can allocate more than the reservation to a virtual machine, but never allocates more than the limit, even if there are unused resources on the system. The limit is expressed in concrete units (megahertz or megabytes).
CPU and memory resource limits default to unlimited. When the memory limit is unlimited, the amount of memory configured for the virtual machine when it was created becomes its effective limit in most cases.
In most cases, it is not necessary to specify a limit. You might waste idle resources if you specify a limit. The system does not allow a virtual machine to use more resources than the limit, even when the system is underutilized and idle resources are available. Specify a limit only if you have good reasons for doing so.
You can use the advanced properties to add metadata about the virtual machine. For example, you could add metadata about the creation date or owner.