Cluster Compute Resource Validate HCI Configuration
Validate HCI configuration in pre-configure and post-configure use-cases.
- pre-configure use-case: Validates the HCI configuration to be applied on the cluster. A successful validation in this case means the HCIConfigSpec can be applied without errors on the cluster using ConfigureHCI_Task or ExtendHCI_Task
These are the things the API validates:- When providing a set of physical adapters in the dvsProf argument, the API validates that all the adapters should be present on all the hosts to be validated. The adapters should either be unmapped or mapped to the same vSwitch across hosts. In addition to this, if the adapters are connected to a DistributedVirtualSwitch, it should be exactly the same way as specified in the dvsProf or in the dvsSetting.
- The API will also validate that the ESXi versions of the hosts are compatible with the version of the DistributedVirtualSwitch being created.
- post-configure case: Validate the cluster has been configured correctly as per the ClusterComputeResourceHCIConfigInfo for the cluster. In this case, the API should be invoked with both params omitted as the intent is to validate all hosts in the cluster using the existing ClusterComputeResourceHCIConfigInfo
Required privileges: System.Read
The unique identifier for the managed object to which the method attaches; the serialized managed object reference for a request has the form moType/moId
, in this case ClusterComputeResource/{moId}
.
The vSphere release schema. The current specification covers vSphere 8.0.3.0 APIs.
{
"hciConfigSpec": {
"_typeName": "string",
"dvsProf": [
{
"_typeName": "string",
"dvsName": "string",
"dvSwitch": {
"_typeName": "string",
"type": "string",
"value": "string"
},
"pnicDevices": [
"string"
],
"dvPortgroupMapping": [
{
"_typeName": "string",
"dvPortgroupSpec": {
"_typeName": "string",
"dynamicProperty": [
{
"_typeName": "string",
"name": "string",
"val": {
"_typeName": "string"
}
}
],
"configVersion": "string",
"name": "string",
"numPorts": 0,
"portNameFormat": "string",
"defaultPortConfig": {
"_typeName": "string",
"blocked": {
"_typeName": "string",
"inherited": false,
"value": false
},
"vmDirectPathGen2Allowed": {
"_typeName": "string",
"inherited": false,
"value": false
},
"inShapingPolicy": {
"_typeName": "string",
"inherited": false,
"enabled": {
"_typeName": "string",
"inherited": false,
"value": false
},
"averageBandwidth": {
"_typeName": "string",
"inherited": false,
"value": 0
},
"peakBandwidth": {
"_typeName": "string",
"inherited": false,
"value": 0
},
"burstSize": {
"_typeName": "string",
"inherited": false,
"value": 0
}
},
"outShapingPolicy": {
"_typeName": "string",
"inherited": false,
"enabled": {
"_typeName": "string",
"inherited": false,
"value": false
},
"averageBandwidth": {
"_typeName": "string",
"inherited": false,
"value": 0
},
"peakBandwidth": {
"_typeName": "string",
"inherited": false,
"value": 0
},
"burstSize": {
"_typeName": "string",
"inherited": false,
"value": 0
}
},
"vendorSpecificConfig": {
"_typeName": "string",
"inherited": false,
"keyValue": [
{
"_typeName": "string",
"key": "string",
"opaqueData": "string"
}
]
},
"networkResourcePoolKey": {
"_typeName": "string",
"inherited": false,
"value": "string"
},
"filterPolicy": {
"_typeName": "string",
"inherited": false,
"filterConfig": [
{
"_typeName": "string",
"inherited": false,
"key": "string",
"agentName": "string",
"slotNumber": "string",
"parameters": {
"_typeName": "string",
"parameters": [
"string"
]
},
"onFailure": "string"
}
]
}
},
"description": "string",
"type": "string",
"backingType": "string",
"scope": [
{
"_typeName": "string",
"type": "string",
"value": "string"
}
],
"policy": {
"_typeName": "string",
"blockOverrideAllowed": false,
"shapingOverrideAllowed": false,
"vendorConfigOverrideAllowed": false,
"livePortMovingAllowed": false,
"portConfigResetAtDisconnect": false,
"networkResourcePoolOverrideAllowed": false,
"trafficFilterOverrideAllowed": false
},
"vendorSpecificConfig": [
{
"_typeName": "string",
"key": "string",
"opaqueData": "string"
}
],
"autoExpand": false,
"vmVnicNetworkResourcePoolKey": "string",
"transportZoneUuid": "string",
"transportZoneName": "string",
"logicalSwitchUuid": "string",
"segmentId": "string"
},
"dvPortgroup": {
"_typeName": "string",
"type": "string",
"value": "string"
},
"service": "string"
}
]
}
],
"hostConfigProfile": {
"_typeName": "string",
"dateTimeConfig": {
"_typeName": "string",
"timeZone": "string",
"ntpConfig": {
"_typeName": "string",
"server": [
"string"
],
"configFile": [
"string"
]
},
"ptpConfig": {
"_typeName": "string",
"domain": 0,
"port": [
{
"_typeName": "string",
"index": 0,
"deviceType": "string",
"device": "string",
"ipConfig": {
"_typeName": "string",
"dhcp": false,
"ipAddress": "string",
"subnetMask": "string",
"ipV6Config": {
"_typeName": "string",
"ipV6Address": [
{
"_typeName": "string",
"ipAddress": "string",
"prefixLength": 0,
"origin": "string",
"dadState": "string",
"lifetime": "string",
"operation": "string"
}
],
"autoConfigurationEnabled": false,
"dhcpV6Enabled": false
}
}
}
]
},
"protocol": "string",
"enabled": false,
"disableEvents": false,
"disableFallback": false,
"resetToFactoryDefaults": false
},
"lockdownMode": "string"
},
"vSanConfigSpec": {
"_typeName": "string"
},
"vcProf": {
"_typeName": "string",
"clusterSpec": {
"_typeName": "string",
"vmSwapPlacement": "string",
"spbmEnabled": false,
"defaultHardwareVersionKey": "string",
"desiredSoftwareSpec": {
"_typeName": "string",
"baseImageSpec": {
"_typeName": "string",
"version": "string"
},
"vendorAddOnSpec": {
"_typeName": "string",
"name": "string",
"version": "string"
},
"components": [
{
"_typeName": "string",
"name": "string",
"version": "string"
}
],
"removedComponents": [
"string"
]
},
"maximumHardwareVersionKey": "string",
"enableConfigManager": false,
"hostSeedSpec": {
"_typeName": "string",
"singleHostSpec": {
"_typeName": "string",
"newHostCnxSpec": {
"_typeName": "string",
"hostName": "string",
"port": 0,
"sslThumbprint": "string",
"userName": "string",
"password": "string",
"vmFolder": {
"_typeName": "string",
"type": "string",
"value": "string"
},
"force": false,
"vimAccountName": "string",
"vimAccountPassword": "string",
"managementIp": "string",
"lockdownMode": "string",
"hostGateway": {
"_typeName": "string",
"gatewayType": "string",
"gatewayId": "string",
"trustVerificationToken": "string",
"hostAuthParams": [
{
"_typeName": "string",
"key": "string",
"value": "string"
}
]
}
},
"existingHost": {
"_typeName": "string",
"type": "string",
"value": "string"
}
}
},
"systemVMsConfig": {
"_typeName": "string",
"allowedDatastores": [
{
"_typeName": "string",
"operation": "string",
"removeKey": {
"_typeName": "string"
},
"datastore": {
"_typeName": "string",
"type": "string",
"value": "string"
}
}
],
"notAllowedDatastores": [
{
"_typeName": "string",
"operation": "string",
"removeKey": {
"_typeName": "string"
},
"datastore": {
"_typeName": "string",
"type": "string",
"value": "string"
}
}
],
"dsTagCategoriesToExclude": [
{
"_typeName": "string",
"operation": "string",
"removeKey": {
"_typeName": "string"
},
"category": "string"
}
],
"deploymentMode": "string"
},
"dasConfig": {
"_typeName": "string",
"enabled": false,
"vmMonitoring": "string",
"hostMonitoring": "string",
"vmComponentProtecting": "string",
"failoverLevel": 0,
"admissionControlPolicy": {
"_typeName": "string",
"resourceReductionToToleratePercent": 0,
"pMemAdmissionControlEnabled": false
},
"admissionControlEnabled": false,
"defaultVmSettings": {
"_typeName": "string",
"restartPriority": "string",
"restartPriorityTimeout": 0,
"isolationResponse": "string",
"vmToolsMonitoringSettings": {
"_typeName": "string",
"enabled": false,
"vmMonitoring": "string",
"clusterSettings": false,
"failureInterval": 0,
"minUpTime": 0,
"maxFailures": 0,
"maxFailureWindow": 0
},
"vmComponentProtectionSettings": {
"_typeName": "string",
"vmStorageProtectionForAPD": "string",
"enableAPDTimeoutForHosts": false,
"vmTerminateDelayForAPDSec": 0,
"vmReactionOnAPDCleared": "string",
"vmStorageProtectionForPDL": "string"
}
},
"option": [
{
"_typeName": "string",
"key": "string",
"value": {
"_typeName": "string"
}
}
],
"heartbeatDatastore": [
{
"_typeName": "string",
"type": "string",
"value": "string"
}
],
"hBDatastoreCandidatePolicy": "string"
},
"dasVmConfigSpec": [
{
"_typeName": "string",
"operation": "string",
"removeKey": {
"_typeName": "string"
},
"info": {
"_typeName": "string",
"key": {
"_typeName": "string",
"type": "string",
"value": "string"
},
"restartPriority": "string",
"powerOffOnIsolation": false,
"dasSettings": {
"_typeName": "string",
"restartPriority": "string",
"restartPriorityTimeout": 0,
"isolationResponse": "string",
"vmToolsMonitoringSettings": {
"_typeName": "string",
"enabled": false,
"vmMonitoring": "string",
"clusterSettings": false,
"failureInterval": 0,
"minUpTime": 0,
"maxFailures": 0,
"maxFailureWindow": 0
},
"vmComponentProtectionSettings": {
"_typeName": "string",
"vmStorageProtectionForAPD": "string",
"enableAPDTimeoutForHosts": false,
"vmTerminateDelayForAPDSec": 0,
"vmReactionOnAPDCleared": "string",
"vmStorageProtectionForPDL": "string"
}
}
}
}
],
"drsConfig": {
"_typeName": "string",
"enabled": false,
"enableVmBehaviorOverrides": false,
"defaultVmBehavior": "string",
"vmotionRate": 0,
"scaleDescendantsShares": "string",
"option": [
{
"_typeName": "string",
"key": "string",
"value": {
"_typeName": "string"
}
}
]
},
"drsVmConfigSpec": [
{
"_typeName": "string",
"operation": "string",
"removeKey": {
"_typeName": "string"
},
"info": {
"_typeName": "string",
"key": {
"_typeName": "string",
"type": "string",
"value": "string"
},
"enabled": false,
"behavior": "string"
}
}
],
"rulesSpec": [
{
"_typeName": "string",
"operation": "string",
"removeKey": {
"_typeName": "string"
},
"info": {
"_typeName": "string",
"key": 0,
"status": "string",
"enabled": false,
"name": "string",
"mandatory": false,
"userCreated": false,
"inCompliance": false,
"ruleUuid": "string"
}
}
],
"orchestration": {
"_typeName": "string",
"defaultVmReadiness": {
"_typeName": "string",
"readyCondition": "string",
"postReadyDelay": 0
}
},
"vmOrchestrationSpec": [
{
"_typeName": "string",
"operation": "string",
"removeKey": {
"_typeName": "string"
},
"info": {
"_typeName": "string",
"vm": {
"_typeName": "string",
"type": "string",
"value": "string"
},
"vmReadiness": {
"_typeName": "string",
"readyCondition": "string",
"postReadyDelay": 0
}
}
}
],
"dpmConfig": {
"_typeName": "string",
"enabled": false,
"defaultDpmBehavior": "string",
"hostPowerActionRate": 0,
"option": [
{
"_typeName": "string",
"key": "string",
"value": {
"_typeName": "string"
}
}
]
},
"dpmHostConfigSpec": [
{
"_typeName": "string",
"operation": "string",
"removeKey": {
"_typeName": "string"
},
"info": {
"_typeName": "string",
"key": {
"_typeName": "string",
"type": "string",
"value": "string"
},
"enabled": false,
"behavior": "string"
}
}
],
"vsanConfig": {
"_typeName": "string",
"enabled": false,
"defaultConfig": {
"_typeName": "string",
"uuid": "string",
"autoClaimStorage": false,
"checksumEnabled": false
},
"vsanEsaEnabled": false
},
"vsanHostConfigSpec": [
{
"_typeName": "string",
"enabled": false,
"hostSystem": {
"_typeName": "string",
"type": "string",
"value": "string"
},
"clusterInfo": {
"_typeName": "string",
"uuid": "string",
"nodeUuid": "string"
},
"storageInfo": {
"_typeName": "string",
"autoClaimStorage": false,
"diskMapping": [
{
"_typeName": "string",
"ssd": {
"_typeName": "string",
"deviceName": "string",
"deviceType": "string",
"key": "string",
"uuid": "string",
"descriptor": [
{
"_typeName": "string",
"quality": "string",
"id": "string"
}
],
"canonicalName": "string",
"displayName": "string",
"lunType": "string",
"vendor": "string",
"model": "string",
"revision": "string",
"scsiLevel": 0,
"serialNumber": "string",
"durableName": {
"_typeName": "string",
"namespace": "string",
"namespaceId": 0,
"data": [
0
]
},
"alternateName": [
{
"_typeName": "string",
"namespace": "string",
"namespaceId": 0,
"data": [
0
]
}
],
"standardInquiry": [
0
],
"queueDepth": 0,
"operationalState": [
"string"
],
"capabilities": {
"_typeName": "string",
"updateDisplayNameSupported": false
},
"vStorageSupport": "string",
"protocolEndpoint": false,
"perenniallyReserved": false,
"clusteredVmdkSupported": false,
"applicationProtocol": "string",
"dispersedNs": false,
"deviceReservation": "string",
"capacity": {
"_typeName": "string",
"blockSize": 0,
"block": 0
},
"devicePath": "string",
"ssd": false,
"localDisk": false,
"physicalLocation": [
"string"
],
"emulatedDIXDIFEnabled": false,
"vsanDiskInfo": {
"_typeName": "string",
"vsanUuid": "string",
"formatVersion": 0
},
"scsiDiskType": "string",
"usedByMemoryTiering": false
},
"nonSsd": [
{
"_typeName": "string",
"deviceName": "string",
"deviceType": "string",
"key": "string",
"uuid": "string",
"descriptor": [
{
"_typeName": "string",
"quality": "string",
"id": "string"
}
],
"canonicalName": "string",
"displayName": "string",
"lunType": "string",
"vendor": "string",
"model": "string",
"revision": "string",
"scsiLevel": 0,
"serialNumber": "string",
"durableName": {
"_typeName": "string",
"namespace": "string",
"namespaceId": 0,
"data": [
0
]
},
"alternateName": [
{
"_typeName": "string",
"namespace": "string",
"namespaceId": 0,
"data": [
0
]
}
],
"standardInquiry": [
0
],
"queueDepth": 0,
"operationalState": [
"string"
],
"capabilities": {
"_typeName": "string",
"updateDisplayNameSupported": false
},
"vStorageSupport": "string",
"protocolEndpoint": false,
"perenniallyReserved": false,
"clusteredVmdkSupported": false,
"applicationProtocol": "string",
"dispersedNs": false,
"deviceReservation": "string",
"capacity": {
"_typeName": "string",
"blockSize": 0,
"block": 0
},
"devicePath": "string",
"ssd": false,
"localDisk": false,
"physicalLocation": [
"string"
],
"emulatedDIXDIFEnabled": false,
"vsanDiskInfo": {
"_typeName": "string",
"vsanUuid": "string",
"formatVersion": 0
},
"scsiDiskType": "string",
"usedByMemoryTiering": false
}
]
}
],
"diskMapInfo": [
{
"_typeName": "string",
"mapping": {
"_typeName": "string",
"ssd": {
"_typeName": "string",
"deviceName": "string",
"deviceType": "string",
"key": "string",
"uuid": "string",
"descriptor": [
{
"_typeName": "string",
"quality": "string",
"id": "string"
}
],
"canonicalName": "string",
"displayName": "string",
"lunType": "string",
"vendor": "string",
"model": "string",
"revision": "string",
"scsiLevel": 0,
"serialNumber": "string",
"durableName": {
"_typeName": "string",
"namespace": "string",
"namespaceId": 0,
"data": [
0
]
},
"alternateName": [
{
"_typeName": "string",
"namespace": "string",
"namespaceId": 0,
"data": [
0
]
}
],
"standardInquiry": [
0
],
"queueDepth": 0,
"operationalState": [
"string"
],
"capabilities": {
"_typeName": "string",
"updateDisplayNameSupported": false
},
"vStorageSupport": "string",
"protocolEndpoint": false,
"perenniallyReserved": false,
"clusteredVmdkSupported": false,
"applicationProtocol": "string",
"dispersedNs": false,
"deviceReservation": "string",
"capacity": {
"_typeName": "string",
"blockSize": 0,
"block": 0
},
"devicePath": "string",
"ssd": false,
"localDisk": false,
"physicalLocation": [
"string"
],
"emulatedDIXDIFEnabled": false,
"vsanDiskInfo": {
"_typeName": "string",
"vsanUuid": "string",
"formatVersion": 0
},
"scsiDiskType": "string",
"usedByMemoryTiering": false
},
"nonSsd": [
{
"_typeName": "string",
"deviceName": "string",
"deviceType": "string",
"key": "string",
"uuid": "string",
"descriptor": [
{
"_typeName": "string",
"quality": "string",
"id": "string"
}
],
"canonicalName": "string",
"displayName": "string",
"lunType": "string",
"vendor": "string",
"model": "string",
"revision": "string",
"scsiLevel": 0,
"serialNumber": "string",
"durableName": {
"_typeName": "string",
"namespace": "string",
"namespaceId": 0,
"data": [
0
]
},
"alternateName": [
{
"_typeName": "string",
"namespace": "string",
"namespaceId": 0,
"data": [
0
]
}
],
"standardInquiry": [
0
],
"queueDepth": 0,
"operationalState": [
"string"
],
"capabilities": {
"_typeName": "string",
"updateDisplayNameSupported": false
},
"vStorageSupport": "string",
"protocolEndpoint": false,
"perenniallyReserved": false,
"clusteredVmdkSupported": false,
"applicationProtocol": "string",
"dispersedNs": false,
"deviceReservation": "string",
"capacity": {
"_typeName": "string",
"blockSize": 0,
"block": 0
},
"devicePath": "string",
"ssd": false,
"localDisk": false,
"physicalLocation": [
"string"
],
"emulatedDIXDIFEnabled": false,
"vsanDiskInfo": {
"_typeName": "string",
"vsanUuid": "string",
"formatVersion": 0
},
"scsiDiskType": "string",
"usedByMemoryTiering": false
}
]
},
"mounted": false
}
],
"checksumEnabled": false
},
"networkInfo": {
"_typeName": "string",
"port": [
{
"_typeName": "string",
"ipConfig": {
"_typeName": "string",
"upstreamIpAddress": "string",
"downstreamIpAddress": "string"
},
"device": "string"
}
]
},
"faultDomainInfo": {
"_typeName": "string",
"name": "string"
},
"vsanEsaEnabled": false
}
],
"groupSpec": [
{
"_typeName": "string",
"operation": "string",
"removeKey": {
"_typeName": "string"
},
"info": {
"_typeName": "string",
"name": "string",
"userCreated": false,
"uniqueID": "string"
}
}
],
"infraUpdateHaConfig": {
"_typeName": "string",
"enabled": false,
"behavior": "string",
"moderateRemediation": "string",
"severeRemediation": "string",
"providers": [
"string"
]
},
"proactiveDrsConfig": {
"_typeName": "string",
"enabled": false
},
"inHciWorkflow": false,
"cryptoConfig": {
"_typeName": "string",
"cryptoMode": "string",
"policy": {
"_typeName": "string",
"keyId": {
"_typeName": "string",
"keyId": "string",
"providerId": {
"_typeName": "string",
"id": "string"
}
},
"providerId": {
"_typeName": "string",
"id": "string"
}
}
}
},
"evcModeKey": "string",
"evcGraphicsModeKey": "string"
}
},
"hosts": [
{
"_typeName": "string",
"type": "string",
"value": "string"
}
]
}
The set of hosts to be validated. If not specified, the set of existing hosts in the cluster will be used.
Note:- This param must be omitted for post-configure validation.
A list of configuration errors. A non-empty list indicates validation has failed.
[
{
"_typeName": "string",
"info": [
{
"_typeName": "string",
"key": "string",
"arg": [
{
"_typeName": "string",
"key": "string",
"value": {
"_typeName": "string"
}
}
],
"message": "string"
}
]
}
]
Failure
{
"_typeName": "string",
"faultCause": "MethodFault Object",
"faultMessage": [
{
"_typeName": "string",
"key": "string",
"arg": [
{
"_typeName": "string",
"key": "string",
"value": {
"_typeName": "string"
}
}
],
"message": "string"
}
]
}