Vsan Vds System Vsan Vds Get Migration Plan

Vsan Vds System Vsan Vds Get Migration Plan

Computes a migration plan 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.

Request
URI
POST
https://{api_host}/sdk/vim25/{release}/vsan/VsanVdsSystem/{moId}/VsanVdsGetMigrationPlan
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
VsanVdsGetMigrationPlanRequestType of type(s) application/json
Required
"VsanVdsGetMigrationPlanRequestType Object"
cluster
Required

Hosts of this cluster will be migrated to the new VDS

Required privileges: System.Read

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

Detailed migration plan.

Returns VsanVdsMigrationPlan of type(s) application/json
"VsanVdsMigrationPlan Object"
vdsSpec
Required

VDS creation spec.

Contains information about host members, and their pNICs.

array of object
pgs
Optional

Migration specs for all portgroups.

All policies are preserved for the consumers of these portgroups.

array of object
inaccessibleVms
Optional

A list of inaccessible or orphaned VMs which are blocking the migration.

array of object
infraVms
Optional

This is includes any infra VM which was explicitly provided by the user as well as possibly an auto-detected vCenter.

vCenter is auto-detected by comparing the IP of vCenter to the IP of VMs on the VSS, and if a match is found the VM is added to the list. Note that dependent VMs like an external VC DB, a DHCP or DNS server, or similar infrastructure VMs will not be auto-detected.


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}/VsanVdsGetMigrationPlan