Upgrade stuck at "Install VCF Operations - Import legacy components using SDDC lifecycle service"
- Arun Nukula
- 4 minutes ago
- 3 min read
Background
Are you currently installing the VCF Management services/components and the process is stalled at the "Install VCF Operations - Import legacy components using SDDC lifecycle" stage?

The Inside Story
At this point, the Fleet lifecycle is attempting to import the legacy components or the inventory data retrieved from VCF Operations. Essentially, it is importing and registering the management components of version 9.0.x.
To understand why and how this happens , read this blog : https://www.arunnukula.com/post/fleet-management-node-9-0-convergence
We've noticed that the Fleet lifecycle is seeking specific properties from the data retrieved from VCF Operations, but it cannot import them because of NULL values.
You might encounter NULL values because you removed and re-added the component in question to the fleet management node's inventory. This action brings in the component properties but not the infrastructure properties.
Retrying the failed task won't be beneficial, as it uses the same payload and attempts again, which isn't helpful.
There's no option to skip this step a well , unlike previous verison 9.0.x or 8.x
If this stage where it's stuck was successful , the following steps were supposed to happen
Deploy License Server
Deploy Telemery
Deploy Identity Broker
Deploy Salt RaaS
Deploy Salt Master Coming out of the situation
Identify which components are deployed and compare them with what was present in version 9.0.x.
If they are already listed under Build - Lifecycle - VCF Management - Component, no further action is needed.
If they are not yet included in the Fleet lifecycle inventory, follow the steps below.
Deploy the pending components via API
This may include Salt Raas, Salt Master, Telemetry, and License Server
Import VCF Automation using Build - Lifecycle - VCF Management - Add Component
Import VCF Operations for Networks 9.0.x using Build - Lifecycle - VCF Management - Add Component
Deploying pending components via Fleet lifecycle API
Downlaod API Collection here
Setup your environment in Bruno
Ensure the repective binaries are download. They will definitely be there as you already reached this stage.
Download and install an API client. In this example, I am using Bruno.
The FQDNs you need to have ready are:
VCF Services runtime FQDN
Fleet components FQDN
Username for authentication to fetch the token, which is admin@vsp.local
The password for admin@vsp.local, which is typically the same as vmware-system-user or the password you entered or generated during the "deployment parameters" screen of the Install Components stage. Refer to the screenshot below where you entered it.

You can also fetch the FQDN's by looking at the details of VCF services runtime component

Now that we have all the inputs , its time to install these components
You would need to create these variables which would be used in the API calls
vcf_services_runtime_fqdn
fleet_component_fqdn
vcf_sr_username
vcf_sr_password
sddc_lcm_idEnter appropriate values based on the environment.

Fetch Authnetication Token
METHOD : POST
API : https://{{vcf_services_runtime_fqdn}}/api/v1/identity/token
Body:
grant_type: pasword
username: {{vcf_sr_username}}
password: {{vcf_sr_password}}
Headers
Content-type: application/x-www-form-urlencoded
Script (Post Response)
if (res.status === 200) {
const tokenData = res.body;
bru.setEnvVar("vsp_token", tokenData.access_token);
console.log("✅ VSP Token obtained and saved to environment");
console.log("Token expires in:", tokenData.expires_in, "seconds");
} else {
console.error("❌ Failed to obtain VSP token");
}

After you set it up and click SEND , to generate Authentication token.
This token is automatically set in Environment section is the script section is in place.
Fetch SDDC LCM ID
SDDC LCM ID is important to fetch as the Fleet lifecycle calls the SDDC lifecycle to execute the installation task.
Execute the below API to go ahead and fetch the SDDC LCM ID. Once fetched keep the id aside as you would need it in the subsequent API requests.
You can even save it in the environment as needed.

Installing Salt RaaS via API

Installing Salt Master via API

Installing Telemetry via an API

Importing existing VCF Automation 9.0.x into Fleet lifecycle
Launch VCF Operation - Build - Lifecycle - VCF Management - Components
Click on Add Component
Select VCF Automation
Select VCF Instance
Enter VCF Automation Primary VIP
Enter vmware-system-user password
This would import VCF Automation into Fleet lifecycle as is into Fleet lifecycle inventory and will be available for upgrade to version 9.1.0.0
Importing VCF Operations for Networks
Note: Ignore the verison being displayed there which states 6.14.x , the same flow can be used for importing 9.0.x as well. So relax.
Launch VCF Operation - Build - Lifecycle - VCF Management - Components
Click on Add Component
Select VCF Operations for Networks
Enter Platform Node's IP address
Enter admin password ( that' the admin@local , user account of VCF Operations for Networks )


