Managed Object -
HostVsanInternalSystem(vim.host.VsanInternalSystem)
- Property of
-
HostConfigManager
- See also
-
HostVsanInternalSystemCmmdsQuery, HostVsanInternalSystemDeleteVsanObjectsResult, HostVsanInternalSystemVsanObjectOperationResult, HostVsanInternalSystemVsanPhysicalDiskDiagnosticsResult, VsanNewPolicyBatch, VsanPolicyChangeBatch, VsanPolicySatisfiability
- Since
- vSphere API 5.5
Managed Object Description
The VsanInternalSystem exposes low level access to CMMDS, as well as draft
versions of VSAN object and disk management APIs that are subject to change
in future releases. No compatibility is guaranteed on any of the APIs,
including their prototype, behavior or result encoding.
Properties
Name
|
Type
|
Description
|
None |
Methods
Methods defined in this Managed Object
|
AbdicateDomOwnership, CanProvisionObjects, DeleteVsanObjects, GetVsanObjExtAttrs, QueryCmmds, QueryObjectsOnPhysicalVsanDisk, QueryPhysicalVsanDisks, QuerySyncingVsanObjects, QueryVsanObjects, QueryVsanObjectUuidsByFilter, QueryVsanStatistics, ReconfigurationSatisfiable, ReconfigureDomObject, RunVsanPhysicalDiskDiagnostics, UpgradeVsanObjects |
AbdicateDomOwnership(abdicateDomOwnership)
Abdicate ownership of DOM objects. The objects must be currently owned
by this host. Which host has ownership of an object at a given point in
time can be queried from QueryVsanObjects() or QueryCmmds() APIs.
Abidcating ownership tears down DOM owner in-memory state. Hosts in the
cluster will then compete to become the new owner of the object, similar
to a host failure event. There is a short interuption of IO flow while
the owner re-election is going on, but it is transparent to any consumers
of the object.
This API is meant as a troubleshooting and debugging tool. It is internal
at this point and can be used to resolve issues where DOM owner gets
"stuck".
- Required Privileges
- Host.Config.Storage
- Since
- vSphere API 6.0
Parameters
Return Value
Type
|
Description
|
xsd:string[] | List of UUIDs successfully abdicated. |
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
Events
Show WSDL type definition
CanProvisionObjects(canProvisionObjects)
Determine if given objects can be provisioned. Determines if the objects
of the given size can be provisioned with the given policies.
The API is intended to answer the question: can these objects be
provisioned with the given policy using the current cluster topology
(#hosts and #disks) and does NOT take into account free space on the
disk, size of disks, etc. If the objects cannot be provisioned,
the API returns the reason for not being able to satisfy the policy.
If the objects can be provisioned, the API returns the cost of
provisioning objects with this policy. Please note: This API ignores
forceProvisioning.
- Required Privileges
- System.Read
- Since
- vSphere API 6.0
Parameters
Name | Type | Description |
_this | ManagedObjectReference |
A reference to the
HostVsanInternalSystem
used to make the method call.
|
npbs | VsanNewPolicyBatch[] |
List of NewPolicyBatch structure with sizes and policies.
|
ignoreSatisfiability | xsd:boolean |
Optionally populate PolicyCost even though
object cannot be provisioned in the current cluster topology.
Since vSphere API 6.0
|
Return Value
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
VimFault | |
Events
Show WSDL type definition
DeleteVsanObjects(deleteVsanObjects)
Delete VSAN objects.
This API is internal and intended for troubleshooting/debugging only.
WARNING: This API can be slow because we do IOs to all the objects.
This API can be used to delete VSAN objects. DOM won't allow access to
objects which have lost quorum. Such objects can be deleted with the
optional "force" flag. These objects may however re-appear with quorum
if the absent components come back (network partition gets resolved,
etc.)
- Required Privileges
- System.Read
- Since
- vSphere API 6.0
Parameters
Return Value
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
VimFault | |
Events
Show WSDL type definition
GetVsanObjExtAttrs(getVsanObjExtAttrs)
Get VSAN object extended attributes.
This API is internal and intended for troubleshooting/debugging
situations in the field. WARNING: This API can be slow because we
do IOs (reads) to all the objects. This API can be used to get
extended attributes of any object in the VSAN cluster from any host
provided the object is accessible from that host. In case of an error,
we return a dict with key "Error" for that object.
- Required Privileges
- System.Read
- Since
- vSphere API 6.0
Parameters
Return Value
Type
|
Description
|
xsd:string | JSON string with the extended attributes. |
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
VimFault | |
Events
Show WSDL type definition
QueryCmmds(queryCmmds)
Query CMMDS directly. The list of given queries is executed and all
results are returned in a flat list. No attempt is made to de-dupe
results in the case of overlapping query results.
- Required Privileges
- System.Read
Parameters
Return Value
Type
|
Description
|
xsd:string | JSON string with the results |
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
Events
Show WSDL type definition
QueryObjectsOnPhysicalVsanDisk(queryObjectsOnPhysicalVsanDisk)
Query DOM objects on a given set of physical disks. Finds all DOM objects
that have at least one component on the given physical disks. In order to
make this API efficient, the output of this API contains the found
DOM_OBJECT, and referenced LSOM_OBJECT and DISK entries.
- Required Privileges
- System.Read
Parameters
Return Value
Type
|
Description
|
xsd:string | JSON string with the results |
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
Events
Show WSDL type definition
QueryPhysicalVsanDisks(queryPhysicalVsanDisks)
Query statistics about physical VSAN disks. Using the props parameter the
caller can control which properties are returned. Requesting only the
required properties is encouraged to reduce server load, response time
and client load.
- Required Privileges
- System.Read
Parameters
Return Value
Type
|
Description
|
xsd:string | JSON string with the results |
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
Events
Show WSDL type definition
QuerySyncingVsanObjects(querySyncingVsanObjects)
Query information about VSAN DOM objects that are currently syncing data.
Instead of returning all objects, only such objects are returned that
are currently resyncing any stale components or syncing fresh replicas.
The API returns the same output format as queryVsanObjects(). It
retrieves information about syncing all objects, or retricts the
search for syncing objects to the UUID list provided. In order to make
this API efficient, the output of this API contains the found
DOM_OBJECT, and referenced LSOM_OBJECT and DISK entries.
- Required Privileges
- System.Read
- Since
- vSphere API 6.0
Parameters
Return Value
Type
|
Description
|
xsd:string | JSON string with the results |
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
Events
Show WSDL type definition
QueryVsanObjects(queryVsanObjects)
Query information about VSAN DOM objects. Retrieves information about the
given set of DOM object UUIDs. In order to make this API efficient, the
output of this API contains the found DOM_OBJECT, and referenced
LSOM_OBJECT and DISK entries.
- Required Privileges
- System.Read
Parameters
Return Value
Type
|
Description
|
xsd:string | JSON string with the results |
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
Events
Show WSDL type definition
QueryVsanObjectUuidsByFilter(queryVsanObjectUuidsByFilter)
Query VSAN object UUIDs by filtering conditions.
The API queries CMMDS by given filtering conditions (initially only for
object version) and return object UUID in an array with limited elements
count.
If caller specified the inputs objects UUID, then only these objects will
be checked for the filtering conditions, and return ones which satisfy
the filtering condition. In this case, the 'limit' parameter will be
ignored.
- Required Privileges
- System.Read
- Since
- vSphere API 6.0
Parameters
Name | Type | Description |
_this | ManagedObjectReference |
A reference to the
HostVsanInternalSystem
used to make the method call.
|
uuids | xsd:string[] |
Objects UUID will be checked against the filtering
conditions.
|
limit | xsd:int |
To limit the size of the result set.
|
version | xsd:int |
Filtering condition 1: object version.
|
Return Value
Type
|
Description
|
xsd:string[] | String array of object uuids which satisfy the filtering conditions. |
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
VsanFault | Thrown for any unexpected failures. |
Events
Show WSDL type definition
QueryVsanStatistics(queryVsanStatistics)
Query VSAN system statistics. This is a low level API that gathers low
level statistic counters from the system. The details of the counters
remain undocumented and unsupported at this point, and this API remains
internal.
The data for this API call mostly comes from VSI, but also other tools
like memstats.
The caller can control which counters are being retrieved by providing
a list of labels. The following labels are current supported:
- TBD
- Required Privileges
- System.Read
- Since
- vSphere API 6.0
Parameters
Return Value
Type
|
Description
|
xsd:string | JSON string with the results |
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
Events
Show WSDL type definition
ReconfigurationSatisfiable(reconfigurationSatisfiable)
Determine if the given objects can be reconfigured with the given
policies. The what-if determination only takes into account
the total number of hosts and total number
of disks per host. The API is intended to answer the question: is
this reconfiguration possible using the current cluster topology
(#hosts and #disks) and does NOT take into account free space on the
disk, size of disks, etc. If policy is not satisfiable, the API returns
the reason for not being able to satisfy the policy. If the policy is
satisfiable, the API returns the cost of provisioning objects with the
new policy. This cost can be combined with current available free disk
space to compute if a particular operation is expected to succeed
or fail. Please note: This API ignores forceProvisioning.
- Required Privileges
- System.Read
- Since
- vSphere API 6.0
Parameters
Name | Type | Description |
_this | ManagedObjectReference |
A reference to the
HostVsanInternalSystem
used to make the method call.
|
pcbs | VsanPolicyChangeBatch[] |
List of PolicyChangeBatch structure with uuids and policies.
|
ignoreSatisfiability | xsd:boolean |
Optionally populate PolicyCost even though
object cannot be reconfigured in the current cluster topology.
Since vSphere API 6.0
|
Return Value
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
VimFault | |
Events
Show WSDL type definition
ReconfigureDomObject(reconfigureDomObject)
Reconfigure DOM object. Typically we expect VM centric APIs to be used
for setting storage policies, i.e. to use ReconfigVM() to change the
policy/profile of a namespace directory or virtual disk. This is a low
level API to reconfigure any object known by UUID.
This API is internal and intended for troubleshooting/debugging
situations in the field.
- Required Privileges
- Host.Config.Storage
- Since
- vSphere API 6.0
Parameters
Return Value
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
Events
Show WSDL type definition
RunVsanPhysicalDiskDiagnostics(runVsanPhysicalDiskDiagnostics)
Runs diagnostics on VSAN physical disks. This method takes an active
approach and creates a minimal and temporary object on each physical
MD disk consumed by VSAN across the entire VSAN cluster. The temporary
objects are deleted right away upon completion of creation. The result
returns a list of all checked MDs, indicating wheather or not there was
a problem creating an object on that MD at the given point in time.
- Required Privileges
- System.Read
- Since
- vSphere API 6.0
Parameters
Name | Type | Description |
_this | ManagedObjectReference |
A reference to the
HostVsanInternalSystem
used to make the method call.
|
disks | xsd:string[] |
List of VSAN disk UUIDs. If specified restricts the
diagnostics run to VSAN disks present in the provided list.
|
Return Value
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
Events
Show WSDL type definition
UpgradeVsanObjects(upgradeVsanObjects)
Upgrade VSAN objects version.
Upgrade a set of objects' version to new one in batch mode.
API caller should limit the size of the inputs array, and suggested
array size is 500 ~ 1000 initially. (The API will give more realistic
suggestion after more experiments, then will apply hard limits in future)
- Required Privileges
- Host.Config.Storage
- Since
- vSphere API 6.0
Parameters
Name | Type | Description |
_this | ManagedObjectReference |
A reference to the
HostVsanInternalSystem
used to make the method call.
|
uuids | xsd:string[] |
The array of objects' UUID which will be upgraded.
|
newVersion | xsd:int |
The new version will be applied to objects.
|
Return Value
Faults
Type
|
Description
|
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
VsanFault | Thrown for any unexpected failures. |
Events
Show WSDL type definition