vCenter Inventory Service fails to start in vCenter Server Appliance 5.x
search cancel

vCenter Inventory Service fails to start in vCenter Server Appliance 5.x

book

Article ID: 328534

calendar_today

Updated On:

Products

VMware

Issue/Introduction

This article provides steps to reset the Inventory Service database for vCenter Server 5.0, 5.1, and 5.5 deployed as a virtual appliance. For more information on resetting the vCenter Server Inventory Service database installed on a Microsoft Windows Server, see Resetting the VMware vCenter Server 5.x Inventory Service database (2042200).
 
For more information on the VMware vCenter Inventory Service, see the vCenter Inventory Service section in the VMware vCenter Server 5.5 Deployment Guide.
 
Cautions:
  • vCloud Director matches Storage Policies/Profiles name. This needs to be recorded and recreated exactly after an Inventory Service database resets. After you have created the Storage Policies/Profiles with the same name and the next sync occurs, vCloud Director picks up the Policy/Profile and the associated datastores. A Sync occurs every 5 minutes unless triggered. A Sync can be triggered from vCloud Director by selecting the vCenter Server, right-clicking and selecting Reconnect.
  • If Storage Profiles do not exist within the vCloud, vCenter Server 5.1 and 5.5 environments, then there is no expected effect on vCloud Director. If you reset the Inventory Service database, vCloud Director's connection with vCenter Server goes out of sync and does not have accurate information about managed virtual machines.
  • Any Storage Profiles that you are using via the vSphere Profile-Driven Storage service are lost when the Inventory Service database is reset.
  • All tags are deleted during a reset.
  • If the vCenter Server is part of vCenter Server Heartbeat, replication needs to be stopped prior to performing these steps. Also, when running the re-point to the Inventory Service, the Public IP must be used. When it completes, restart the vCenter Server Heartbeat services to restore replication.
  • If the vCenter Server environment has Site Recovery Manager and you reset the Inventory Service database you need to run a Change/Modify and Repair on Site recovery manager from the Windows Programs and Features to re-register Site Recovery Manager with the vCenter Server and Inventory Service.
  • If the environment uses VEEAM for backup operations, the jobs must be mapped to the virtual machines again.
Note: This issue does not affect VMware View environments.
 
If you are using vCloud Director and experience this issue, file a support request with VMware Technical Support and note this Knowledge Base article ID (2042200) in the problem description.

For more information on filing a Support Request, see How to file a Support Request in Customer Connect (2006985).


Symptoms:
  • The vCenter Server Inventory service fails to start in vCenter Server Appliance.
  • In the /var/log/vmware/vpx/inventoryservice/ds.log file, you see entries similar to:

    [<YYYY-MM-DD>T<time>,077 WrapperListener_start_runner FATAL com.vmware.vim.dataservices.WrapperListenerImpl] Error starting service: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'instanceUUID' defined in class path resource [server/config/server-config.xml]: Cannot resolve reference to bean 'store' while setting bean property 'targetObject'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'storeFactory' defined in class path resource [server/config/query-server-config.xml]: Invocation of init method failed; nested exception is com.xhive.error.XhiveException: INTERNAL_ERROR: Log corrupt: no log records seen, checkpointLSN = 5009727e5)

    </time>
    Note: The preceding log excerpts are only examples. Date, time, and environmental variables may vary depending on your environment.
     
  • Virtual machines are missing in the inventory in Web Client 5.5.
  • In the vSphere Web Client, you see an error similar to:

    Client is not authenticated to VMware Inventory Service


Cause

This issue occurs when the vCenter Server Inventory Service database is unusable or corrupt.

Resolution

This issue is resolved in:

To work around this issue, recreate the vCenter Inventory Service database and re-register it to vCenter Server Appliance.
 
To recreate the vCenter Inventory Service database and to re-register it to vCenter Server Appliance:

Note: This procedure modifies the database. Ensure to take a backup of the database before proceeding.
  1. Connect to the vCenter Server Appliance using SSH or a virtual machine console and log in as the root user.
  2. Run these commands:

    # service vmware-inventoryservice stop
    # mv /storage/db/inventoryservice/data /storage/db/inventoryservice/data.old
    # /usr/lib/vmware-vpx/inventoryservice/scripts/ds-invoke.sh -Dvim.logdir=/var/log/vmware/vpx/inventoryservice com.vmware.vim.dataservices.CreateDb /storage/db/inventoryservice/data changeme default changeme


    Note: The database password is changeme.
     
  3. Ensure that the vCenter Inventory Service is started by running this command:

    # service vmware-inventoryservice start
     
  4. To re-register the vCenter Inventory Service to vCenter Server Appliance, run these commands in order depending on your version:

    vCenter Server Appliance 5.0:

    # /usr/lib/vmware-vpx/inventoryservice/scripts/ds-invoke.sh -Dvim.logdir=/var/log/vmware/vpx/inventoryservice-registration com.vmware.vim.dataservices.provider.util.SetupLocalService -vcurl https://vcenter_name_or_ip:443 /sdk/vimService -providercfg file:/usr/lib/vmware-vpx/inventoryservice/lib/server/config/vc-provider-registration.xml -servicecfg /usr/lib/vmware-vpx/inventoryservice/lib/server/config/dataservice.properties

    # service vmware-vpxd restart


    vCenter Server Appliance 5.1:

    # /usr/lib/vmware-vpx/inventoryservice-registration/vcregtool.sh -Dvim.logdir=/var/log/vmware/vpx/inventoryservice-registration com.vmware.vim.dataservices.vcregtool.RegisterVC -action register -lookupserviceurl https:// vcenter_name_or_ip:7444/lookupservice/sdk -isurl https:// vcenter_name_or_ip:10443 -vcurl https:// vcenter_name_or_ip/sdk/vimService -vccert /etc/vmware-vpx/ssl/rui.crt -vcprivkey /etc/vmware-vpx/ssl/rui.key -vcinstancecfg /etc/vmware-vpx/instance.cfg -vcendpointsdir /usr/lib/vmware-vpx/endpoints -vcextensionsdir /usr/lib/vmware-vpx/extensions

    # service vmware-vpxd restart

    Note: If you are using an external Single Sign-On instance, specify the Single Sign-On server name or IP address within the -lookupserviceurl portion of the preceding command.


    vCenter Server Appliance 5.5:

    # /usr/lib/vmware-vpx/inventoryservice-registration/vcregtool.sh -Dvim.logdir=/var/log/vmware/vpx/inventoryservice-registration com.vmware.vim.dataservices.vcregtool.RegisterVC -action register -lookupserviceurl https://vcenter_fqdn:7444/lookupservice/sdk -isurl https://vcenter_fqdn:10443 -vcurl https://vcenter_fqdn/sdk/vimService -vccert /etc/vmware-vpx/ssl/rui.crt -vcprivkey /etc/vmware-vpx/ssl/rui.key -vcinstancecfg /etc/vmware-vpx/instance.cfg -vcendpointsdir /usr/lib/vmware-vpx/endpoints -vcextensionsdir /usr/lib/vmware-vpx/extensions

    # service vmware-vpxd restart


    Note: If you are using an external Single Sign-On instance, specify the Single Sign-On server name or IP address within the -lookupserviceurl portion of the preceding command.


Additional Information

How to file a Support Request in Customer Connect
Resetting the VMware vCenter Server 5.x Inventory Service database
vCenter Server Appliance 5.x で vCenter Inventory Service の開始に失敗する
vCenter Server Appliance 5.x 中的 vCenter Inventory Service 启动失败