An error "A vCenter upgrade is already running" can be seen during vCenter reduced downtime upgrade is in progress and the vcenter reduced downtime upgrade operation will be failed.
VCF 5.2.1
There can be a previous vCenter Reduced Downtime Upgrade operation in progress because of which a precheck error is thrown, in such cases please query the status of the inprogress operation with the help of steps provided in this KB
Check the status of the upgrade by calling the vCenter Upgrade status endpoint directly on the vCenter that is being upgraded using root credentials. Do not use any other credentials to achieve optimal results:
curl -u root:<Replace_with_Root_Password> --location 'https://{Replace_with_vCenter_Hostname}/lcm/rest/vcenter/lcm/deployment/migration-upgrade/status'
The result of the operation will consist of many fields but the important ones are listed in the example below:
{ "desired_state": "UPGRADED", "status": "RUNNING", "error": { # It is only shown if there are errors. "error_type": "ERROR", "messages": [...] } }
SUCCEEDED" or "CANCELED" -> the upgrade has reached the final state and there are no other actions that need to be taken using the status API.UPGRADED" and result['status'] is "RUNNING" -> Upgrade is in progress, wait for the operation to complete or be canceled.UPGRADED" and result['status'] is "FAILED" -> Upgrade has failed, automatic cancellation will start shortly if the status does not change in 1 minute, move to manual cancellation using KB https://knowledge.broadcom.com/external/article/311902.CANCELED" and result['status'] is "RUNNING" -> Cancellation is in progress, wait for it to be completed by re-running the Status API call in some time.CANCELED" and result['status'] is "FAILED" -> Cancellation has failed, use KB https://knowledge.broadcom.com/external/article/311902 to cancel manually after fixing the problem listed in result['error']