Distributed Virtual Switch Manager Query Dvs Check Compatibility

Distributed Virtual Switch Manager Query Dvs Check Compatibility

This operation returns a list of compatibility results.

Each compatibility result is an object that has a host property and optionally a fault which would be populated only if that host is not compatible with a given dvsProductSpec. All filters in hostFilerSpecs are ANDed to derive the intersection of hosts against which compatibility is checked. If caller did not have view privileges on the host entity in an element of the CompatibilityResult array, then that entire element would be removed from the CompatibilityResult array. Typical uses:

  • For the createDVS situation, hostFilterSpec is of type HostDvsFilterSpec and DvsProductSpec will have newSwitchProductSpec set.
  • For the Add-Host-To-DVS situation, you can use either HostDvsFilterSpec or HostDvsMembershipFilter with inclusive being false, and pass the DVS in DvsProductSpec.
  • For the Upgrade-DVS situation, you can use either HostDvsFilterSpec or HostDvsMembershipFilter with inclusive being true, and pass the new desired ProductSpec for DVS in newSwitchProductSpec.

Required privileges: System.View

Request
URI
POST
https://{vcenter-host}/sdk/vim25/{release}/DistributedVirtualSwitchManager/{moId}/QueryDvsCheckCompatibility
COPY
Path Parameters
string
moId
Required

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 DistributedVirtualSwitchManager/{moId}.

string
release
Required

The vSphere release schema. The current specification covers vSphere 8.0.2.0 APIs.


Request Body
QueryDvsCheckCompatibilityRequestType of type(s) application/json
Required
{
    "hostContainer": {
        "_typeName": "string",
        "container": {
            "_typeName": "string",
            "type": "string",
            "value": "string"
        },
        "recursive": false
    },
    "dvsProductSpec": {
        "_typeName": "string",
        "newSwitchProductSpec": {
            "_typeName": "string",
            "name": "string",
            "vendor": "string",
            "version": "string",
            "build": "string",
            "forwardingClass": "string",
            "bundleId": "string",
            "bundleUrl": "string"
        },
        "distributedVirtualSwitch": {
            "_typeName": "string",
            "type": "string",
            "value": "string"
        }
    },
    "hostFilterSpec": [
        {
            "_typeName": "string",
            "inclusive": false
        }
    ]
}
hostContainer
Required

Check host compatibility for all hosts in the container.

If the recursive flag is true, then check hosts at all levels within this container, otherwise check only at the container level. In case of container being a Datacenter, the recursive flag is applied to its HostFolder.

dvsProductSpec
Optional

This class is used to specify ProductSpec for the DVS.

The two properties are strictly mutually exclusive. If both properties are set, then an InvalidArgument fault would be thrown.

hostFilterSpec
Optional

The hosts against which to check compatibility. This is a filterSpec and users can use this to specify all hosts in a container (datacenter, folder, or computeResource), an array of hosts, or hosts that might or might not be a DVS member.

Authentication
This operation uses the following authentication methods.
Responses
200

OK

Returns Array of DistributedVirtualSwitchManagerCompatibilityResult of type(s) application/json
[
    {
        "_typeName": "string",
        "host": {
            "_typeName": "string",
            "type": "string",
            "value": "string"
        },
        "error": [
            {
                "_typeName": "string",
                "faultCause": "MethodFault Object",
                "faultMessage": [
                    {
                        "_typeName": "string",
                        "key": "string",
                        "arg": [
                            {
                                "_typeName": "string",
                                "key": "string",
                                "value": {
                                    "_typeName": "string"
                                }
                            }
                        ],
                        "message": "string"
                    }
                ]
            }
        ]
    }
]