The issue is caused when the VASA (Virtual Appliance Storage API) or vVol is configured with self-signed certificates, and the self-signed certificate is incorrectly pushed into the TRUSTED_ROOTS VECS store. Instead of using the certificate's thumbprint, the registration URL is used as the alias, which leads to the failure during the pre-checks.
Follow the steps below to resolve the issue:
1. Ensure that the vmafd service is reachable and started.
Before continuing, make sure the vmafd
(VMware vCenter Server Directory Service) is up and running.
2. Take a backup of the source vCenter Server
Make sure you take a valid snapshot or backup of the vCenter Server before making any changes.
3. Check for invalid entries in the TRUSTED_ROOTS store
Run the following command to list all entries in the TRUSTED_ROOTS store on the source appliance:
The output should resemble the following:
Note: The third alias listed (i.e., https://XX.XX.XX.XX:8443/vasa/version.xml
) is invalid because it uses a URL instead of a thumbprint.
4. Backup the certificate
Before making any changes, it’s good practice to back up the certificate. Use the following command to export the certificate to a file:
For example:
5. Delete the invalid entry
After backing up the certificate, you can safely delete the invalid entry from the TRUSTED_ROOTS store.
For example:
6. Publish the certificate to vmdir
If you want to publish a new or existing certificate, use the following command:
For example:
7. Verify the updated TRUSTED_ROOTS store
To verify that the invalid entry has been removed, run the following command:
The output should resemble the following:
8. Retry the vCenter upgrade
Once the invalid entries have been addressed, proceed with the vCenter upgrade. The pre-checks should now complete successfully.
9. Unpublish the cert (if no longer needed)
If the certificate is no longer in use, you can unpublish it from the vmdir using the following command:
For example:
Additional Notes: