vcenter resource pool: resource allocation info

The resource_allocation_info structure contains resource allocation information of a resource pool. This structure was added in vSphere API 7.0.0.0.

Representation:

{
    "shares"{
        "shares"1,
        "level""LOW"
    },
    "expandable_reservation"true,
    "limit"1,
    "reservation"1
}

Attributes:

Name Type Description
Required
reservation long Amount of resource that is guaranteed available to a resource pool. Reserved resources are not wasted if they are not used. If the utilization is less than the reservation, the resources can be utilized by other running virtual machines. Units are MB fo memory, and MHz for CPU. This attribute was added in vSphere API 7.0.0.0.

expandable_reservation boolean In a resource pool with an expandable reservation, the reservation can grow beyond the specified value, if the parent resource pool has unreserved resources. A non-expandable reservation is called a fixed reservation. This attribute was added in vSphere API 7.0.0.0.

limit long The utilization of a resource pool will not exceed this limit, even if there are available resources. This is typically used to ensure a consistent performance of resource pools independent of available resources. If set to -1, then there is no fixed limit on resource usage (only bounded by available resources and shares). Units are MB for memory, and MHz for CPU. This attribute was added in vSphere API 7.0.0.0.

shares shares_info Shares are used in case of resource contention. This attribute was added in vSphere API 7.0.0.0.

shares.level string The allocation level. It maps to a pre-determined set of numeric values for shares. If the shares value does not map to a predefined size, then the level is set as CUSTOM. This attribute was added in vSphere API 7.0.0.0.

Defines the possible values for the allocation level. This enumeration was added in vSphere API 7.0.0.0. Value is one of:
LOW: For CPU: Shares = 500 * number of virtual CPUs.
For Memory: Shares = 5 * virtual machine memory size in MB.
. This constant was added in vSphere API 7.0.0.0.
NORMAL: For CPU: Shares = 1000 * number of virtual CPUs.
For Memory: Shares = 10 * virtual machine memory size in MB.
. This constant was added in vSphere API 7.0.0.0.
HIGH: For CPU: Shares = 2000 * nmumber of virtual CPUs.
For Memory: Shares = 20 * virtual machine memory size in MB.
. This constant was added in vSphere API 7.0.0.0.
CUSTOM: If set, in case there is resource contention the server uses the shares value to determine the resource allocation. This constant was added in vSphere API 7.0.0.0.

Optional
shares.shares long When vcenter.resource_pool.shares_info.level is set to CUSTOM, it is the number of shares allocated. Otherwise, this value is ignored.

There is no unit for this value. It is a relative measure based on the settings for other resource pools.

. This attribute was added in vSphere API 7.0.0.0.

Optional. It is only relevant when level has value CUSTOM. This field is optional and it is only relevant when the value of level is CUSTOM.