vSAN Management API
| Local Methods | ||
Managed Object Types | Data Object Types | All Properties | All Methods |
Managed Object - VsanVcClusterConfigSystem(vim.cluster.VsanVcClusterConfigSystem)
- See also
- ClusterComputeResource, ClusterComputeResourceValidationResultBase, Task, VimVsanReconfigSpec, VirtualMachine, VsanConfigInfoEx, VsanHostDrsStats, VsanRuntimeStatsHostMap, VsanVcLifecycleCheckResult, VsanVcLifecycleCheckSpec
- Since
- vSphere API Release 6.0
Managed Object Description
This managed object type provides a comprehensive way to manage vSAN cluster configuration in below areas:- Enable or disable vSAN
- Enable or disable Autoclaim mode for disk group
- Enable or disable data efficiency feature
- Configure vSAN iSCSI target feature
- Manage disk groups
- Manage fault domains
- Retrieve vSAN generic configuration
- Retrieve data efficiency configuration
The ManagedEntity can be accessed with MOID of 'vsan-cluster-config-system', through vSAN service at vCenter server side.
Properties
Name | Type | Description |
---|---|---|
None |
Methods
Methods defined in this Managed Object |
---|
RunLifecycleCheck, VsanClusterGetClaimedCapacity, VsanClusterGetConfig, VsanClusterGetRuntimeStats, VsanClusterReconfig, VsanEncryptedClusterRekey_Task, VsanQueryClusterDrsStats, VsanValidateConfigSpec |
RunLifecycleCheck(runLifecycleCheck)
Run checks for lifecycle operations on a given vSAN cluster. The specification indicates the lifecycle operation for which checks will be performed. The result contains an overall status of the checks, a list of the checks run, and vSAN cluster configurations details related to the checks. The overall status of the checks in the result represents the highest severity status of all the results of the individual checks. For example, if all tests pass, the highest severity status is green. If a test results in yellow status and another in red status, the overall status will be red. The list of checks contains a description of the check, its result status and in case of failure, a localized error message. The vSAN cluster configuration details contains information like witness host and fault domains information for stretched clusters, or no witness host information to indicate single-site cluster.- Required Privileges
- System.Read
- Since
- vSAN API 7.3
Parameters
Name | Type | Description |
---|---|---|
_this | ManagedObjectReference | A reference to the VsanVcClusterConfigSystem used to make the method call. |
cluster | ManagedObjectReference
to a ClusterComputeResource |
Cluster on which to perform lifecycle checks and return
configuration information.
Since vSAN API 7.3 |
vsanLifecycleCheckSpec | VsanVcLifecycleCheckSpec |
Specification for the lifecycle checks.
Since vSAN API 7.3 |
Return Value
Type | Description |
---|---|
VsanVcLifecycleCheckResult | Lifecycle checks and configuration 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. |
VsanFault | Thrown if any unexpected runtime fault is met. |
Events
Type | |
---|---|
None |
Show WSDL type definition
VsanClusterGetClaimedCapacity(getClaimedCapacity)
Get total raw capacity in bytes for all disks claimed in a vSAN cluster. In the case of ESA, that includes all disks in the storage pool. In the case of OSA, that includes the capacity tier disks but not the cache disks as the latter does not contribute to capacity. The same value is reported to the licensing service for capacity entitlement purposes. Note that it differs from vSAN datastore capacity in two ways. First, it is based on raw capacity reported by the disk vendor, which includes any and all overhead reserved internally by vSAN. Secondly, it reflects the cluster configuration, which is not affected by the runtime state of the cluster, such as disk health, host health, and network partition. The claimed capacity is initialized in an async process after enabling vSAN, so it is possible that the claimed capacity value is not ready yet when vSAN is still in initialization phase. In this case, API caller can retry in a short period of time.- Required Privileges
- None
- Since
- vSAN API 8.0.0.4
Parameters
Name | Type | Description |
---|---|---|
_this | ManagedObjectReference | A reference to the VsanVcClusterConfigSystem used to make the method call. |
cluster P | ManagedObjectReference
to a ClusterComputeResource |
The target vCenter cluster.
Since vSAN API 8.0.0.4 |
Return Value
Type | Description |
---|---|
xsd:long | The total claimed disk capacity in raw bytes. |
Faults
Type | Description |
---|---|
InvalidState | Thrown if the capacity value has not been initialized. |
NotSupported | Thrown if the cluster has not enabled vSAN. |
RuntimeFault | Thrown 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
VsanClusterGetConfig(getConfigInfoEx)
Get configInfoEx for a vSAN clusterWe can get vSAN configuration information through this method. Currently users can only get generic cluster configuration and data efficiency configuration through this API.
This API cannot retrieve fault domain configuration and disk group configuration. Disk group configuration can be retrieved through QueryDiskMappings. Fault domain configuration can be retrieved through Config.
- Required Privileges
- None
Parameters
Name | Type | Description |
---|---|---|
_this | ManagedObjectReference | A reference to the VsanVcClusterConfigSystem used to make the method call. |
cluster P | ManagedObjectReference
to a ClusterComputeResource |
The target vCenter cluster
Since vSphere API Release 6.0 |
Return Value
Type | Description |
---|---|
VsanConfigInfoEx | The configuration spec for the vCenter cluster ConfigInfoEx inherits from VsanClusterConfigInfo. It appends data efficiency configuration. |
Faults
Type | Description |
---|---|
InvalidState | |
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
VsanFault |
Events
Type | |
---|---|
None |
Show WSDL type definition
VsanClusterGetRuntimeStats(getRuntimeStats)
Get vSAN runtime stats of all hosts reside in specified cluster. This API is used to retrieve vSAN runtime stats from all hosts reside in specified vSAN cluster. It bases on specified stats type list, to retrieve expected vSAN runtime stats. If host is out of reach, such as disconnected from vCenter, its stats will be ignored and unset.- Required Privileges
- None
- Since
- vSAN API 6.6
Parameters
Name | Type | Description |
---|---|---|
_this | ManagedObjectReference | A reference to the VsanVcClusterConfigSystem used to make the method call. |
cluster P | ManagedObjectReference
to a ClusterComputeResource |
The target vCenter cluster
Since vSAN API 6.6 |
stats* | xsd:string[] |
List of vSAN runtime stats type. Supported vSAN runtime stats
types are declared in VsanHostStatsType.
If this parameter is omitted, all supported runtime stats will
be collected and returned.
Since vSAN API 6.6 |
Return Value
Type | Description |
---|---|
VsanRuntimeStatsHostMap[] | vim.vsan.RuntimeStatsHostMap[] List of vSAN runtime stats, each item contains owner host and its stats. If specified cluster is empty, or vSAN is disabled on it, an empty list will be returned. |
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
Type | |
---|---|
None |
Show WSDL type definition
VsanClusterReconfig(reconfigureEx)
Reconfigure a vSAN cluster. This method is used to set vSAN specific configuration, the method can be used to modify all vSAN related configuration. From vSAN 6.2, this API is the replacement of ReconfigureComputeResource_Task in order to support more configurations such as deduplication and compression, fault domain, disk mapping configuration in the cluster. The legacy API ReconfigureComputeResource_Task is deprecated because new API provide everything that legacy API has. To modify generic vSAN cluster setting such as vSAN enablement and autoclaim enablement, vsanClusterConfig needs to be setup. To modify vSAN cluster specific features such as deduplication and compression enablement, dataEfficiencyConfig needs to be setup. Currently for vSAN 6.2, deduplication and and compression need to be enable/disable together. To enable/disable deduplication and compression on a vSAN cluster, disk convert process (PerformVsanUpgradeEx for description about disk convert process) will be invoked. This is only supported for all-flash disk groups. To modify vSAN cluster fault domain configuration, faultDomainsSpec needs to be setup. To modify vSAN cluster disk groups reconfiguration, diskMappingSpec needs to be setup. To modify vSAN iSCSI target service configuration, vim.vsan.ReconfigSpecs#iscsiSpec needs to be setup.Reconfiguring vSAN cluster requires Host.Inventory.EditCluster privilege on the cluster, extra privileges may be required depending on what is being changed:
- Cryptographer.ManageEncryptionPolicy and Cryptographer.ManageKeys if changing data encryption configuration.
- Required Privileges
- None
Parameters
Name | Type | Description |
---|---|---|
_this | ManagedObjectReference | A reference to the VsanVcClusterConfigSystem used to make the method call. |
cluster | ManagedObjectReference
to a ClusterComputeResource |
The target VC cluster.
Since vSphere API Release 6.0 |
vsanReconfigSpec | VimVsanReconfigSpec |
The configure spec for vSAN cluster.
Since vSphere API Release 6.0 |
Return Value
Type | Description |
---|---|
ManagedObjectReference
to a Task | vim.Task |
Faults
Type | Description |
---|---|
InvalidState | Thrown if the vSAN is not enabled in current cluster. |
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
VsanFault | when turn on data efficiency feature on a cluster which has hybrid disk group. |
Events
Type | |
---|---|
None |
Show WSDL type definition
VsanEncryptedClusterRekey_Task(rekeyEncryptedCluster)
Regenerate the key(s) used by vSAN encryption for the given cluster. When the key(s) used for vSAN encryption is compromised, this API can be used to renew the key(s). As described in VsanHostEncryptionInfo, vSAN uses Key Encryption Key (KEK) to wrap the Data Encryption Key (DEK). Generally a user will only need to renew the KEK and use new KEK to rewrap the DEK, when KEK is compromised, or on regular basis. This is referred to as "shallow rekey". If user suspects that DEK is also compromised, both KEK and DEK will be renewed. Correspondingly this is called "deep rekey". And as a consequence of DEK change, the data on vSAN datastore will be re-encrypted with the new DEK, so this will be a slow process.This API does not support switching to a different KMS cluster. When there is a need to switch to a different KMS cluster, call vim.cluster.VsanVcClusterConfigSystem#VsanClusterReconfig and specify a different KMS cluster in the configuration kmsProviderId.
To run either shallow rekey or deep rekey for an encrypted vSAN cluster, both Cryptographer.ManageKeys privilege and Host.Inventory.EditCluster privilege are required on the cluster. If it is a shallow rekey, alternatively, caller with Vsan.Cluster.ShallowRekey privilege on the cluster will also be allowed.
- Required Privileges
- None
- Since
- vSAN API 6.6
Parameters
Name | Type | Description |
---|---|---|
_this | ManagedObjectReference | A reference to the VsanVcClusterConfigSystem used to make the method call. |
encryptedCluster | ManagedObjectReference
to a ClusterComputeResource |
The target VC cluster
Since vSAN API 6.6 |
deepRekey* | xsd:boolean |
True to perform a deep rekey. Its default value is false when
not provided, which means shallow rekey is performed
Since vSAN API 6.6 |
allowReducedRedundancy* | xsd:boolean |
This optional parameter is only applicable for
deep rekey when it needs to migrate data across cluster for changing
vSAN disk format. The default value is 'false' if not specified
See allowReducedRedundancy,
vim.vsan.host.DecommissionMode.ObjectAction#ensureObjectAccessibility,
and vim.vsan.host.DecommissionMode.ObjectAction#evacuateAllData.
Since vSAN API 6.6 |
Return Value
Type | Description |
---|---|
ManagedObjectReference
to a Task |
Faults
Type | Description |
---|---|
InvalidState | Thrown if the vSAN is not enabled or encryption is not enabled on the cluster. |
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error. |
VsanFault |
Events
Type | |
---|---|
None |
VsanQueryClusterDrsStats(queryClusterDrsStats)
To support integration between vSAN and DRS, we are expected to report runtime stats of vSAN member hosts and VMs locate in specified vSAN cluster from storage perspective. Per request from DRS service, below stats are requested:
- 1. capacity contributed to vSAN datastore per host;
- 2. capacity usage to vSAN datastore per host;
- 3. total size per vSAN VM;
- 4. valid data percentage on every host per vSAN VM;
- Required Privileges
- None
- Since
- vSAN API VMC M5
Parameters
Name | Type | Description |
---|---|---|
_this | ManagedObjectReference | A reference to the VsanVcClusterConfigSystem used to make the method call. |
cluster P | ManagedObjectReference
to a ClusterComputeResource |
The target vSAN cluster;
Since vSAN API VMC M5 |
vms* | ManagedObjectReference[]
to a VirtualMachine[] |
Specified VM list of which runtime stats should be reported. If omitted
return stats of all vSAN VMs locate in specified vSAN cluster;
Since vSAN API VMC M5 |
Return Value
Type | Description |
---|---|
VsanHostDrsStats[] | List of VsanHostDrsStats, in which stats should be parsed by the order of returned DrsStats. |
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
Type | |
---|---|
None |
Show WSDL type definition
VsanValidateConfigSpec(validateConfigSpec)
Validate the vSAN cluster reconfig spec to figure out whether user spec can be supported by target cluster. This API cannot predict the runtime failure, but only check the spec based on software capability. If target cluster cannot support the spec, it returns the detailed config issues.- Required Privileges
- None
- Since
- vSAN API vSAN 7.0U1
Parameters
Name | Type | Description |
---|---|---|
_this | ManagedObjectReference | A reference to the VsanVcClusterConfigSystem used to make the method call. |
cluster P | ManagedObjectReference
to a ClusterComputeResource |
The target VC cluster to apply reconfig spec
Since vSAN API vSAN 7.0U1 |
vsanReconfigSpec | VimVsanReconfigSpec |
The configure spec to be validated
Since vSAN API vSAN 7.0U1 |
Return Value
Type | Description |
---|---|
ClusterComputeResourceValidationResultBase[] | A list of different validation results. The result returned are of two types. 1. If the spec enables vSAN ESA, then result for every precheck is returned using VsanClusterConfigPrecheckItem. This includes prechecks of all possible statuses as in VsanHealthStatusType 2. If the spec does not enable vSAN ESA, then the result for prechecks are returned using ClusterComputeResourceValidationResultBase. Here, only the the prechecks which fail the validation are returned. The field info contains the precheck failure reason. |
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
Type | |
---|---|
None |
Show WSDL type definition
Top of page | Local Methods | ||
Managed Object Types | Data Object Types | All Properties | All Methods |