# Data Object - ResourceConfigSpec(vim.ResourceConfigSpec)

Property of
  HostSystemResourceInfo, OvfResourceMap, ResourcePool, ResourcePoolSummary, VAppCloneSpec, VAppCloneSpecResourceMap, VirtualAppImportSpec, VirtualMachine
Parameter to
  CreateResourcePool, CreateVApp, UpdateChildResourceConfiguration, UpdateConfig
Extends
  DynamicData
See also
  ManagedEntity, ResourceAllocationInfo
Since
  2.0

## Data Object Description

This data object type is a specification for a set of resources allocated to a virtual machine or a resource pool.

Properties

Name | Type | Description
--- | --- | ---
changeVersion* | xsd:string | The changeVersion is a unique identifier for a given version of the configuration. Each change to the configuration will update this value. This is typically implemented as an ever increasing count or a time-stamp. However, a client should always treat this as an opaque string. If specified when updating the resource config., the changes will only be applied if the current changeVersion matches the specified changeVersion. This field can be used to guard against updates that has happened between the configInfo was read and until it is applied.
cpuAllocation | ResourceAllocationInfo | Resource allocation for CPU.
entity* | ManagedObjectReference to a ManagedEntity | Reference to the entity with this resource specification: either a VirtualMachine or a ResourcePool.
lastModified* | xsd:dateTime | Timestamp when the resources were last modified. This is ignored when the object is used to update a configuration.
memoryAllocation | ResourceAllocationInfo | Resource allocation for memory.
scaleDescendantsShares* | xsd:string | Specifies the scaling behavior of the shares of all descendant resource pools under a given resource pool. See ResourceConfigSpecScaleSharesBehavior for possible values. If any scaling behavior other than ScaleSharesBehavior#disabled is specified, the system will scale the CPU and memory shares allocated to each descendant resource pool with the total shares of all powered on virtual machines under each respective pool. The system will also use the SharesInfo set on each descendant resource pool as a multiplier for the scale. If a resource pool's shares are already scalable through the scaleDescendantsShares setting on an ancestor resource pool, the system will not allow scaleDescendantsShares to be set on the resource pool. The sharesScalable property indicates whether or not a resource pool's shares are scalable. This property does not apply to virtual machines. Since vSphere API 7.0
Properties inherited from DynamicData
None

*Need not be set
Show WSDL type definition
<complexType xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="ResourceConfigSpec"> <complexContent> <extension base="vsan:DynamicData"> <sequence> <element name="entity" type="vsan:ManagedObjectReference" minOccurs="0"/> <element name="changeVersion" type="xsd:string" minOccurs="0"/> <element name="lastModified" type="xsd:dateTime" minOccurs="0"/> <element name="cpuAllocation" type="vsan:ResourceAllocationInfo"/> <element name="memoryAllocation" type="vsan:ResourceAllocationInfo"/> <element name="scaleDescendantsShares" type="xsd:string" minOccurs="0"/> </sequence> </extension> </complexContent> </complexType>