Vsan Vds System Vsan Vds Migrate Vss

Vsan Vds System Vsan Vds Migrate Vss

Perform a migration to convert the VSS instances per host in the cluster to a newly created VDS.

The VDS preserves all settings of the VSS, and all consumers (vmknics, VM vNICs, pNICs) are considered as part of the migration. The VSS vSwitch and portgroup instances across the hosts are matched to each other by common name. It is expected that hosts have a uniform configuration, and issues will be raised in the migration plan if deviations are found. Any deviations will still be carried over, but may require renaming of portgroups and additional VDS portgroups to resolve the conflicts. The migration plan is defined to be safe, i.e., the effective data path for all impacted VMs, vmknics and so on are going to be using the same settings as before the migration. The only change will be in any additional pNICs added as part of the migration.
Note: This API can also be used to create a new VDS without any portgroups, but with the physical NICs attached, and with good settings for vSAN, by simply passing the vswitchName as NULL.
If a migration plan is passed in, the API makes sure that no changes have happened and that the migration plan is still current. This can be used to make sure that the migration plan that the user reviewed doesn't deviate from the actual migration performed.
If there are any inaccessible or orphaned VMs found the migration will not be performed. This is a safety measure as such VMs may loose their networking.
If there are any inaccessible hosts in the cluster the migration will fail.
The migration will fail if there is any infraVm on ESX with version prior to 6.5.0d, due to the missing of API support on the hosts.
A minimal version of 6.0 is required for all hosts to be migrated for the NetIOC setup task. Also the VDS version will be 6.0.0 if there is any 6.0 host to be migrated, otherwise 6.5.0.

This API by default requires DVSwitch.Create and DVSwitch.Modify on RootFolder, and System.Read on cluster. Host.Inventory.EditCluster on hosts is required if hosts parameter is provided.

Request
URI
POST
https://{api_host}/sdk/vim25/{release}/vsan/VsanVdsSystem/{moId}/VsanVdsMigrateVss
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 VsanVdsSystem/{moId}.

string
release
Required

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


Request Body
VsanVdsMigrateVssRequestType of type(s) application/json
Required
"VsanVdsMigrateVssRequestType Object"
cluster
Required

Hosts of this cluster will be migrated to the new VDS

migrationPlan
Optional

Detailed migration plan

string
vswitchName
Optional

Name of the original VSS vswitch

string
vdsName
Optional

Name of the new VDS. Only required for the creation of a new VDS

array of string
vmnicDevices
Optional

Physical NICs that are currently unused to be attached to the new VDS.

array of object
infraVm
Optional

Infrastructure VMs that will be handled specially during migration.

vds
Optional

The VDS which the hosts are connected to. Set this parameter when existing VDS can be leveraged.

array of object
hosts
Optional

hosts in the cluster to be migrated to the VDS. Leave this field empty if all the hosts in the cluster needs to be migrated.

Authentication
This operation uses the following authentication methods.
Responses
200

The task associated with the migration

Returns MoRefTask of type(s) application/json
"MoRefTask Object"

500

NotFound: when specified cluster doesn't exist.

VsanFault: Any unexpected runtime error.

InvalidArgument: When hosts with invalid or inconsistent configuration are found.

Returns MethodFault of type(s) application/json
This response body class contains all of the following: InlineMethodFault0
"MethodFault Object"
faultCause
Optional

Fault which is the cause of this fault.

array of object
faultMessage
Optional

Message which has details about the error Message can also contain a key to message catalog which can be used to generate better localized messages.


Code Samples
COPY
                    curl -X POST -H 'Authorization: <value>' -H 'Content-Type: application/json' -d '[{}]' https://{api_host}/sdk/vim25/{release}/vsan/VsanVdsSystem/{moId}/VsanVdsMigrateVss