Cross vCenter Migration inventory fails to load when migrating between vCenters in a VMware Cloud Foundation (VCF) fleet.
search cancel

Cross vCenter Migration inventory fails to load when migrating between vCenters in a VMware Cloud Foundation (VCF) fleet.

book

Article ID: 436394

calendar_today

Updated On:

Products

VMware vCenter Server VMware Cloud Foundation VCF Operations

Issue/Introduction

When performing a Cross vCenter Server export/migration from a source vCenter (vcenter01) to a target vCenter (vcenter02) within the same VCF fleet, the target vCenter inventory fails to load. The UI may display an empty array or an "invalidCredentials" error despite correct credentials.

  • Migrating from vcenter02 to vcenter01 works correctly.
  • Initiating migration from vcenter01 to vcenter02 results in the target inventory not loading.
  • In Source vCenter /var/log/vmware/vsphere-ui/logs/vsphere_client_virgo.log shows: Tried to add an alien VC whose GUID is already registered.
    com.vmware.vise.vim.commons.vcservice.impl.VcListServiceImpl      Tried to add an alien VC whose GUID is already registered: 2e38####-####-####-####-########7c34d
  • API calls to tree/children return an empty result [] for the remote vCenter object.
    https://vcenter01.example.com/ui/tree/children?treeId=MigrateHostsAndClustersTree&nodeTypeId=RefOrVcAsRoot&objRef=urn:vmomi:Folder:group-d1:2e38####-####-####-####-########7c34d
    
    []

Environment

  • vCenter Server: 9.0.x
  • VMware ESXi: 9.0.x
  • VMware Cloud Foundation (VCF) Operations 9.0.x

Cause

The issue is caused by stale vCenter linking configuration data on the source vCenter. A previous attempt to delete or update the linking configuration in VCF Operations failed due to an INVALID_CERTIFICATE_EXCEPTION on the specific vCenter node. Because the cleanup task failed, the vCenter still retains metadata or "alien VC" registrations that conflict with new migration requests, preventing the inventory from being populated correctly.

Resolution

To resolve this, a manual cleanup of the stale linking data must be performed via the VCF Operations API.

Prerequisites

  • Verify Health: Ensure the target vCenter is registered in VCF Operations with a healthy status and no active certificate issues.
  • Enable Logging: Follow KB 388875 to set the log level to ALL for package com.vmware.adapter.management.components.vclinking in the Management adapter incase the steps to resolve the issue and Broadcom support is engaged to review and troubleshoot
  • Identify Adapter ID: Locate the vCenter adapter ID for the affected vCenter.
    1. Sign into the product UI of VCF Operations.
    2. Expand the left-hand panel and navigate to Workload Operations > Applications.



    3. On Applications Home locate the vCenter VM > click on the three dots > Go to Details

       

    4. Check the browser URL to find the resourceId

 

Steps to cleanup of the stale linking data:

  1. SSH to VCF Ops VM with root user
  2. Acquire API Token:
    curl -kvs -X POST "https://<vcfops_fqdn>/suite-api/api/auth/token/acquire" -H "Content-Type: application/json" -H "Accept: application/json" -d '{"username" : "admin", "password" : "<admin_assword>"
     
  3. Invoke the manual cleanup API
    curl -k -X 'PUT' 'https://<vcf-ops-ip>/suite-api/internal/vcenterlinking/vcenters/cleanup?_no_links=true' -H 'accept: */*' -H 'X-Ops-API-use-unsupported: true' -H 'Authorization: OpsToken <ops-token from step #2>' -H 'Content-Type: application/json' -d '{ "vcenterIds": ["<vcenter-adapter-id-to-cleanup>"]}'
     
  4. Wait several minutes for the background cleanup tasks to complete.
  5. Retry the Cross vCenter Migration from the vSphere Client.