Error: "An error occurred while fetching identity providers" during vCenter Server Login or Solution User Certificate Renewal Failure
search cancel

Error: "An error occurred while fetching identity providers" during vCenter Server Login or Solution User Certificate Renewal Failure

book

Article ID: 408481

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

vCenter Server Solution user certificate renewal process is failing using vCert script.

Executing the script with Manage Certificates option to replace  Solution User certificates fails with below error

Replace Solution User Certificates
-----------------------------------------------------------------
Verifying Service Principal entries exist           ERROR

Operation failed: Unable to update machine-<VCenter UUID> solution user certificate in VMDir.

or 

ERROR rebuildServices: Mismatch between machine_id #38#######-####-####-####-##########7#6 and vpxd solution user vpxd-#92#######-####-####-####-##########d#@vsphere. local. Please fix this fore proceeding with this operation.

Environment

VMware vCenter Server 7.0.x

VMware vCenter Server 8.0.x

Cause

This issue is caused due to mismatch in Machine ID of vCenter Server. The UUID from the machine ID and the UUID in the vpxd service account name should match.

VDT check confirm that we have Machine ID mismatch.

VC Machine ID Check

            [FAIL]    Machine ID Check
                        Machine ID doesn't match vpxd.cfg

                          Current MID: #38#######-####-####-####-##########7#6
                          Correct MID: #92#######-####-####-####-##########d#4

Resolution

Note: Take Snapshot of vCenter Server without memory before proceeding with below steps, offline snapshot of all nodes in vSphere Domain is required if vCenter Server is part of ELM.

  1. Identify the correct machine ID from the registry :
    /opt/likewise/bin/lwregshell ls "[HKEY_THIS_MACHINE\Services\vmdir]" | grep MachineGuid | awk '{print $2,$NF}'
    "MachineGuid" "38#######-####-####-####-##########7#6"
  2. Validate the vpxd solution user :
    /usr/lib/vmware-vmafd/bin/dir-cli service list
  3. If the vpxd solution user UUID does not match the MachineGuid from Step 1, recreate the solution users using the lsdoctor -u. Refer Using the 'lsdoctor' Tool
  4. Check the current machine ID of the vpxd service account:
    cat /etc/vmware-vpx/vpxd.cfg | grep -i "<name>vpxd"
          
    <name>vpxd-38#######-####-####-####-##########7#[email protected]</name>
    92#######-####-####-####-##########d#4
  5. If a mismatch exists, update the vpxd.cfg file to match the machine ID identified in Step 1:
    vi /etc/vmware-vpx/vpxd.cfg
  6. Update the entry to: vpxd-####-####-####-####@vsphere.local (replacing #### with the ID from Step 1).
  7. Restart all vCenter services: service-control --stop --all && service-control --start --all