Managed Object - PbmPlacementSolver(pbm.placement.PlacementSolver)

Property of
PbmServiceInstanceContent
See also
PbmCapabilityProfileCreateSpec, PbmPlacementCompatibilityResult, PbmPlacementHub, PbmPlacementRequirement, PbmProfileId, PbmServerObjectRef


Managed Object Description

The PbmPlacementSolver data object provides methods to identify placement hubs that support the capabilities to store virtual machine files. A placement hub is a datastore or a storage pod. A vSphere API StoragePod corresponds to Storage DRS in the vSphere Web Client.

Properties

Name Type Description
None

Methods

Methods defined in this Managed Object
PbmCheckCompatibility, PbmCheckCompatibilityWithSpec, PbmCheckRequirements, PbmQueryMatchingHub, PbmQueryMatchingHubWithSpec

PbmCheckCompatibility(checkCompatibility)

Deprecated. As of vSphere 2016, use ServerObjectRef, Requirement[]) instead in order to retrieve compatibility status on both compute and storage location.

Performs placement compatibility checking based on a storage requirement profile. If compatibility checking for a hub does not produce any errors, the hub is considered a viable candidate for virtual machine file storage. If this method is invoked for VVolDefaultProfile profile, then all the VVOL containers are returned as matching.
Required Privileges
StorageProfile.View

Parameters

NameTypeDescription
_thisManagedObjectReference A reference to the PbmPlacementSolver used to make the method call.
hubsToSearch*PbmPlacementHub[]

Candidate list of hubs, either datastores or storage pods or a mix. If this parameter is not specified, the Server uses all of the datastores and storage pods for placement compatibility checking.
profilePbmProfileId

Storage requirement profile.
*Need not be set

Return Value

Type Description
PbmPlacementCompatibilityResult[]Array of compatibility result objects. The results array contains one entry for each entry in the hubsToSearch list. If a hubs list is not specified, the results array contains one entry for each datastore and storage pod in your vSphere environment. Any errors are described in the results array.
  • If there is an invalid argument error, the compatibility results will contain InvalidArgument faults indicating that the profile does not exist or that it does not match the requirement type.
  • If there are errors or warnings during compatibility checking, the compatibility results will contain faults derived from PbmCompatibilityCheckFault.
  • If this method is invoked for VVolDefaultProfile then the compatibility results will contain faults derived from PbmCompatibilityCheckFault for non-vvol datastores.

Faults

Type Description
RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition



PbmCheckCompatibilityWithSpec(checkCompatibilityWithSpec)

Deprecated. As of vSphere 2016, use ServerObjectRef, Requirement[]) instead in order to retrieve compatibility status for both compute and storage location.

Performs placement compatibility checking based on a storage profile specification. If compatibility checking for a hub does not produce any errors, the hub is considered a viable candidate for virtual machine file storage.
Required Privileges
StorageProfile.View

Parameters

NameTypeDescription
_thisManagedObjectReference A reference to the PbmPlacementSolver used to make the method call.
hubsToSearch*PbmPlacementHub[]

Candidate list of hubs, either datastores or storage pods or a mix. If this parameter is not specified, the Server uses all of the datastores and storage pods for placement compatibility checking.
profileSpecPbmCapabilityProfileCreateSpec

Specification for a capability based profile.
*Need not be set

Return Value

Type Description
PbmPlacementCompatibilityResult[]Array of compatibility result objects. The results array contains one entry for each entry in the hubsToSearch list. If a hubs list is not specified, the results array contains one entry for each datastore and storage pod in your vSphere environment. Any errors are described in the results array.
  • If there is an invalid argument error, the compatibility results will contain InvalidArgument faults indicating that the profile does not exist or that it does not match the requirement type.
  • If there are errors or warnings during compatibility checking, the compatibility results will contain faults derived from PbmCompatibilityCheckFault.

Faults

Type Description
RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition



PbmCheckRequirements(checkRequirements)

Performs placement compatibility checking for the specified object to be placed based on its specified set of requirements. If compatibility checking for a hub does not produce any errors, the hub is considered a viable candidate for virtual machine storage.
Required Privileges
StorageProfile.View
Since
6.5

Parameters

NameTypeDescription
_thisManagedObjectReference A reference to the PbmPlacementSolver used to make the method call.
hubsToSearch*PbmPlacementHub[]

Candidate list of hubs, either datastores or storage pods or a mix. If this parameter is not specified, the Server uses all of the datastores and storage pods for placement compatibility checking.
placementSubjectRef*PbmServerObjectRef

reference to the object being placed. Should be null when a new object is being provisioned. Should be specified when placement compatibility is being checked for an existing object. Supported objects are virtualMachine, virtualMachineAndDisks, virtualDiskId, virtualDiskUUID
placementSubjectRequirement*PbmPlacementRequirement[]

Requirements including the policy requirements, compute requirements and capacity requirements. It is invalid to specify no requirements. It is also invalid to specify duplicate requirements or multiple conflicting requirements such as specifying both PbmPlacementCapabilityConstraintsRequirement and PbmPlacementCapabilityProfileRequirement.
*Need not be set

Return Value

Type Description
PbmPlacementCompatibilityResult[]Array of compatibility result objects. The results array contains one entry for each entry in the hubsToSearch list. If hubs list is not specified, the results array contains one entry for each datastore and storage pod in your vSphere environment. Any errors are returned in the results array.
  • If there is an invalid argument error, the compatibility results will contain InvalidArgument faults indicating that the profile does not exist or that it does not match the requirement type.
  • If there are errors or warnings during compatibility checking, the compatibility results will contain faults derived from PbmCompatibilityCheckFault.

Faults

Type Description
InvalidArgumentThrown if placementSubjectRequirement is null or empty or if there are duplicate or multiple conflicting requirements such as PbmPlacementCapabilityConstraintsRequirement and PbmPlacementCapabilityProfileRequirement both being specified.
PbmFaultThrown if there is an internal server error.
RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition



PbmQueryMatchingHub(queryMatchingHub)

Deprecated. As of vSphere 2016, use ServerObjectRef, Requirement[]) instead in order to retrieve both compatible compute and storage location.

Finds matching placement hubs for the specified requirements profile. This method returns only those hubs that match the profile. If this method is invoked for VVolDefaultProfile profile, then all the VVOL containers are returned as matching.
Required Privileges
StorageProfile.View

Parameters

NameTypeDescription
_thisManagedObjectReference A reference to the PbmPlacementSolver used to make the method call.
hubsToSearch*PbmPlacementHub[]

Candidate list of hubs, either datastores or storage pods or a mix. If this parameter is not specified, the Server uses all of the datastores and storage pods.
profilePbmProfileId

Storage requirement profile.
*Need not be set

Return Value

Type Description
PbmPlacementHub[]Subset of the hubsToSearch list that satisfies the profile requirements. A storage pod is returned if and only if all its member datastores satisfy the profile requirements, whether the hubs list contains any of the member datastores or not. If a datastore and its storage pod are in the hubs list, and both satisfy the requirements, both are returned.

Faults

Type Description
PbmFaultThrown if there is an internal server error.
RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition



PbmQueryMatchingHubWithSpec(queryMatchingHubWithSpec)

Deprecated. As of vSphere 2016, use ServerObjectRef, Requirement[]) instead in order to retrieve both compatible compute and storage location.

Finds matching placement hubs based on a profile creation specification. This method returns only those hubs that match the specification.
Required Privileges
StorageProfile.View

Parameters

NameTypeDescription
_thisManagedObjectReference A reference to the PbmPlacementSolver used to make the method call.
hubsToSearch*PbmPlacementHub[]

Candidate list of hubs, either datastores or storage pods or a mix. If this parameter is not specified, the Server uses all of the datastores and storage pods for placement compatibility checking.
createSpecPbmCapabilityProfileCreateSpec

Storage profile creation specification.
*Need not be set

Return Value

Type Description
PbmPlacementHub[]Subset of the hubsToSearch list that satisfies the profile requirements. A storage pod is returned if and only if all its member datastores satisfy the profile requirements, whether the hubs list contains any of the member datastores or not. If a datastore and its storage pod are in the hubs list, and both satisfy the requirements, both are returned.

Faults

Type Description
PbmFaultThrown if there is an internal server error.
RuntimeFaultThrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition