Migrate

Migrate

This request performs a planned migration for all the child VMs in the vApp replication. The planned migration ensures that the source VMs are powered off, synchronizes them to ensure that the latest changes for each VM are available on the destination site, recovers the VMs, powers off the source VMs/vApp, and finally undeploys the source VMs/vApp.

Request
URI
POST
https://{api_host}//vapp-replications/{replicationId}/migrate
COPY
Path Parameters
string
replicationId
Required

Cloud vApp-level replication identifier

replicationId example
C4VAPP-ec991bd5-af9d-446a-8599-5b693842c4a3
Query Parameters
string
site
Optional

Optional site to run the operation on. When omitted, defaults to the local site.

site example
site1
Header Parameters
string
operationID
Optional

Operation ID for correlating logs across multiple services


Request Body
{
    "consolidate": false,
    "type": "vcloud",
    "vmNetworkSettings": {
        "de68576d-7505-490e-ab9e-1942c2c965c4": {
            "primaryNicIndex": 0,
            "nics": [
                {
                    "nicIndex": 0,
                    "isConnected": true,
                    "resetMacAddress": false,
                    "network": "ext_net_vdc_s1Org",
                    "ipAddress": "",
                    "ipAddressAllocationMode": "POOL",
                    "externalIpAddress": null,
                    "networkAdapterType": null,
                    "needsCustomization": null,
                    "macAddress": "00:50:56:8a:b2:a8"
                }
            ],
            "copySourceNicSettings": true,
            "computerName": "testpc",
            "enableGuestCustomization": true
        }
    },
    "vAppNetworkSettings": {
        "networkMappings": [
            {
                "sourceNetworkName": "ext_net_vdc_s1Org",
                "sourceOrgVdcNetwork": {
                    "id": "e5a39b99-6c27-493c-acce-7eae3cd7414e",
                    "name": "ext_net_vdc_s1Org"
                },
                "destinationOrgVdcNetwork": {
                    "id": "f1c31b8d-c36b-4c2e-9236-cf97f5046072",
                    "name": "ext_net_vdc_s2Org"
                }
            }
        ],
        "copySourceNetworks": true,
        "bridgeOrgVdcNetworks": [],
        "bulkConnectVmNics": false
    },
    "powerOn": true
}
Authentication
This operation uses the following authentication methods.
Responses
202

Accepted

Returns C4ApiTask_of_VappReplicationInfo of type(s) application/vnd.vmware.h4-v4.5+json;charset=UTF-8
{
    "endTime": 1499929558827,
    "error": {
        "args": [],
        "code": "Forbidden",
        "msg": "Permission denied.",
        "stacktrace": "com.vmware.h4.api.error.exceptions.PermissionDeniedException: Permission denied."
    },
    "id": "f61d60d2-698a-46dc-a266-88df27644956",
    "lastUpdated": 1499929558827,
    "progress": 100,
    "result": {
        "descriptor": {
            "description": "vapp description in VMware Cloud Director",
            "enabledTemplateCustomization": false,
            "isGolden": false,
            "metadata": {},
            "name": "my vapp 1",
            "networks": [
                {
                    "dhcpService": {
                        "defaultLeaseTime": 0,
                        "domainName": "string",
                        "ipRange": {
                            "endAddress": "string",
                            "startAddress": "string"
                        },
                        "isEnabled": false,
                        "maxLeaseTime": 0,
                        "primaryNameServer": "string",
                        "routerIp": "string",
                        "secondaryNameServer": "string",
                        "subMask": "string"
                    },
                    "fenceMode": "string",
                    "firewallService": {
                        "defaultAction": "string",
                        "firewallRules": [
                            {
                                "description": "string",
                                "destinationIp": "string",
                                "destinationPortRange": "string",
                                "destinationVm": {
                                    "ipType": "string",
                                    "vmName": "string",
                                    "vmNicId": 0
                                },
                                "direction": "string",
                                "enableLogging": false,
                                "icmpSubType": "string",
                                "id": "string",
                                "isEnabled": false,
                                "matchOnTranslate": false,
                                "policy": "string",
                                "port": 0,
                                "position": 0,
                                "protocol": {
                                    "any": false,
                                    "icmp": false,
                                    "other": "string",
                                    "tcp": false,
                                    "udp": false
                                },
                                "sourceIp": "string",
                                "sourcePort": 0,
                                "sourcePortRange": "string",
                                "sourceVm": {
                                    "ipType": "string",
                                    "vmName": "string",
                                    "vmNicId": 0
                                }
                            }
                        ],
                        "isEnabled": false,
                        "logDefaultAction": false
                    },
                    "ipScopes": [
                        {
                            "allocatedIpAddresses": [
                                "string"
                            ],
                            "dnsSuffix": "string",
                            "gateway": "string",
                            "ipRanges": [
                                {
                                    "endAddress": "string",
                                    "startAddress": "string"
                                }
                            ],
                            "isEnabled": false,
                            "isInherited": false,
                            "netmask": "string",
                            "primaryDns": "string",
                            "secondaryDns": "string"
                        }
                    ],
                    "name": "string",
                    "natService": {
                        "externalIp": "string",
                        "isEnabled": false,
                        "natRules": [
                            {
                                "description": "string",
                                "gatewayNatRule": {
                                    "icmpSubType": "string",
                                    "originalIp": "string",
                                    "originalPort": "string",
                                    "protocol": "string",
                                    "translatedIp": "string",
                                    "translatedPort": "string"
                                },
                                "id": 0,
                                "isEnabled": false,
                                "oneToOneBasicRule": {
                                    "externalIpAddress": "string",
                                    "internalIpAddress": "string",
                                    "mappingMode": "string"
                                },
                                "oneToOneVmRule": {
                                    "externalIpAddress": "string",
                                    "mappingMode": "string",
                                    "vmName": "string",
                                    "vmNicId": 0
                                },
                                "portForwardingRule": {
                                    "externalIpAddress": "string",
                                    "externalPort": 0,
                                    "internalIpAddress": "string",
                                    "internalPort": 0,
                                    "protocol": "string"
                                },
                                "type": "string",
                                "vmRule": {
                                    "externalIpAddress": "string",
                                    "externalPort": 0,
                                    "internalPort": 0,
                                    "protocol": "string",
                                    "vmName": "string",
                                    "vmNicId": 0
                                }
                            }
                        ],
                        "policy": "string",
                        "type": "string"
                    },
                    "parentId": "string",
                    "parentName": "string"
                }
            ]
        },
        "destination": {
            "org": "org2",
            "recoveredVappId": "null",
            "site": "site2",
            "vdcId": "5ee9224f-305d-46f6-865f-b605e70acef8",
            "vdcName": "Virtual DC 2"
        },
        "id": "C4VAPP-ccbe771e-b685-46c7-8c7a-4ed36915d963",
        "isMigration": false,
        "lastUpdated": 0,
        "overallHealth": "string",
        "owner": "org1@site2",
        "source": {
            "isTemplate": false,
            "org": "org1",
            "site": "site1",
            "vappId": "d6977f40-4d90-46b2-a34e-5077e8648eda",
            "vdcId": "f61d60d2-698a-46dc-a266-88df27644956",
            "vdcName": "Virtual DC 1"
        },
        "vmReplications": [
            {
                "computerName": "computerName",
                "dataConnectionState": "string",
                "destinationState": {
                    "currentRpoViolation": 25,
                    "isMovingReplica": false,
                    "lastError": {
                        "args": [],
                        "code": "Forbidden",
                        "msg": "Permission denied.",
                        "stacktrace": "com.vmware.h4.api.error.exceptions.PermissionDeniedException: Permission denied."
                    },
                    "latestInstance": {
                        "isPinned": false,
                        "key": "replica-52f3e775-a8fa-13e3-e9be-39264ed2dfe2",
                        "quiescedType": "string",
                        "sequenceNumber": 11,
                        "timestamp": 1469701818743,
                        "transferBytes": 512000,
                        "transferSeconds": 4
                    },
                    "spaceRequirement": 0,
                    "state": "string",
                    "stateAge": 0
                },
                "guestCustomization": {
                    "adminAutoLogonCount": 3,
                    "adminPassword": "sEcUrEpAsS",
                    "adminPasswordAuto": true,
                    "adminPasswordEnabled": true,
                    "changeSid": true,
                    "computerName": "workload-69",
                    "customizationScript": "echo 'hello world'",
                    "domainName": "workgroup",
                    "domainOrgUnit": "computers",
                    "domainUserName": "user1",
                    "domainUserPassword": "sEcUrEpAsS",
                    "enabled": true,
                    "joinDomainEnabled": true,
                    "resetPasswordRequired": true,
                    "useOrgSettings": true
                },
                "id": "C4-11111111-af9d-446a-8599-5b693842c4a3",
                "isMigration": true,
                "isPaused": false,
                "isReversed": false,
                "lastUpdated": 618094800000,
                "metadata": {},
                "overallHealth": "string",
                "owner": "org1@site1",
                "placementPolicy": "ecde053f-1aed-4547-b73a-52b9f7c48298",
                "placementPolicyName": "Gold",
                "settings": {
                    "dataConnectionType": "string",
                    "description": "new description",
                    "excludedDiskKeys": [
                        0
                    ],
                    "initialSyncTime": 0,
                    "quiesced": true,
                    "retentionPolicy": {
                        "rules": [
                            {
                                "distance": 15,
                                "numberOfInstances": 3
                            }
                        ]
                    },
                    "rpo": 15,
                    "targetDiskType": "string"
                },
                "sizingPolicy": "ecde053f-1aed-4547-b73a-52b9f7c48298",
                "sizingPolicyName": "SizingPolicy1",
                "slaProfile": {
                    "displayName": "Gold",
                    "id": "61c528c8-1a8c-4c4e-8886-f1b6eeba98a5"
                },
                "sourceState": {
                    "stateAge": 0
                },
                "sourceVmEncrypted": false,
                "startupInfo": {
                    "order": 0,
                    "startAction": "powerOn",
                    "startDelay": 0,
                    "stopAction": "powerOff",
                    "stopDelay": 0
                },
                "storageProfile": "ecde053f-1aed-4547-b73a-52b9f7c48298",
                "storageProfileName": "*",
                "vimLocation": {
                    "datastore": "datastore",
                    "datastoreMoref": "datastore-33",
                    "datastoreName": "test datastore",
                    "dsClusterMoref": "string",
                    "dsClusterName": "string",
                    "vimServer": "vim server",
                    "vimServerInstanceUuid": "b260ac0-eec6-4437-9184-54ee34a1e28d"
                },
                "vmDescription": "description",
                "vmId": "d1d9739f-9e3b-4c24-9cbb-3a9fdddaf47c",
                "vmName": "my vm 1"
            }
        ]
    },
    "resultType": "string",
    "site": "site2",
    "startTime": 1499929548951,
    "state": "string",
    "user": "root",
    "warnings": [],
    "workflowInfo": {}
}
integer As int64 As int64
endTime
Optional

Timestamp in msec of the completion time of the task. -1 means the task hasn't completed.

error
Optional

error

string As uuid As uuid
id
Optional

The unique identifier of the long-running task. It is unique and can be used for monitoring.

integer As int64 As int64
lastUpdated
Optional

Timestamp in msec of the last task status update.

integer As int32 As int32
progress
Optional

Percentage-based progress of the task.

result
Optional

result

string
resultType
Optional

Indicates the type of the task result. Populated only if the execution was successful.

string
site
Optional

Site on which the task runs.

integer As int64 As int64
startTime
Optional

Timestamp in msec of the creation time of the task.

state
Optional

state

string
user
Optional

The user who started the task.

warnings
Optional

Warnings, which occurred during the task execution.

workflowInfo
Optional

workflowInfo


400

The returned error codes include (but are not limited to): BadRequest

Returns ApiError of type(s) application/vnd.vmware.h4-v4.5+json;charset=UTF-8
{
    "args": [],
    "code": "Forbidden",
    "msg": "Permission denied.",
    "stacktrace": "com.vmware.h4.api.error.exceptions.PermissionDeniedException: Permission denied."
}
array of string
args
Optional

Positional arguments.

string
code
Optional

Specific error code.

string
msg
Optional

Detailed error message.

string
stacktrace
Optional

Exception stacktrace.


401

The returned error codes include (but are not limited to): NotAuthenticated, RemoteAuthenticationFailure

Returns ApiError of type(s) application/vnd.vmware.h4-v4.5+json;charset=UTF-8
{
    "args": [],
    "code": "Forbidden",
    "msg": "Permission denied.",
    "stacktrace": "com.vmware.h4.api.error.exceptions.PermissionDeniedException: Permission denied."
}
array of string
args
Optional

Positional arguments.

string
code
Optional

Specific error code.

string
msg
Optional

Detailed error message.

string
stacktrace
Optional

Exception stacktrace.


404

The returned error codes include (but are not limited to): SiteNotFound

Returns ApiError of type(s) application/vnd.vmware.h4-v4.5+json;charset=UTF-8
{
    "args": [],
    "code": "Forbidden",
    "msg": "Permission denied.",
    "stacktrace": "com.vmware.h4.api.error.exceptions.PermissionDeniedException: Permission denied."
}
array of string
args
Optional

Positional arguments.

string
code
Optional

Specific error code.

string
msg
Optional

Detailed error message.

string
stacktrace
Optional

Exception stacktrace.


500

The returned error codes include (but are not limited to): GeneralServerFailure

Returns ApiError of type(s) application/vnd.vmware.h4-v4.5+json;charset=UTF-8
{
    "args": [],
    "code": "Forbidden",
    "msg": "Permission denied.",
    "stacktrace": "com.vmware.h4.api.error.exceptions.PermissionDeniedException: Permission denied."
}
array of string
args
Optional

Positional arguments.

string
code
Optional

Specific error code.

string
msg
Optional

Detailed error message.

string
stacktrace
Optional

Exception stacktrace.