You can merge two Provider VDCs by specifying a target Provider VDC and a contributor Provider VDC to merge with it. The merged Provider VDC contains all resources from the target and contributor Provider VDCs

Because merging Provider VDCs is a resource-intensive operation, vCloud Director allows only a single contributor to a merge. You can merge multiple Provider VDCs into a single target by making multiple merge requests, each specifying the same target and a new contributor.

When the merge is complete:

Networks, network pools, storage profiles, resource pools, and datastores from the contributor Provider VDC are available in the target Provider VDC.

Organization VDCs that were backed by the contributor are now backed by the target.

The contributor Provider VDC is deleted.

This operation is restricted to system administrators.

1

Identify the Provider VDCs to merge.

Select a contributor that is not backed by the same resource pool as the target. You can use a query like this one to discover the resource pools backing each of your Provider VDCs.

GET https://vcloud.example.com/api/query?type=providerVdcResourcePoolRelation&format=records
2

Construct a ProviderVdcMergeParams element whose ProviderVdcReference references the contributor.

See the request portion of Example: Merge Provider VDCs.

3

Make a POST request to the action/merge link of the target Provider VDC and supply the ProviderVdcMergeParams as the request body.

This request merges the Provider VDC at https://vcloud.example.com/api/admin/extension/providervdc/46 with the target Provider VDC specified in the request URL.

Request:

POST https://vcloud.example.com/api/admin/extension/providervdc/35/action/merge
Content-Type: application/vnd.vmware.admin.providerVdcMergeParams+xml
...
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<vmext:ProviderVdcMergeParams
   type="application/vnd.vmware.admin.mergeParams+xml"
   xmlns:vmext="http://www.vmware.com/vcloud/extension/v1.5"
   xmlns:vcloud="http://www.vmware.com/vcloud/v1.5">
   <vmext:ProviderVdcReference
      type="application/vnd.vmware.admin.vmwprovidervdc+xml"
      name="PVDC-VC001"
      href="https://vcloud.example.com/api/admin/extension/providervdc/46" />
</vmext:ProviderVdcMergeParams>

Response:

202 Accepted
Content-Type: application/vnd.vmware.vcloud.task+xml
...
<Task ... >
   ...
</Task>