Lookupservice fails to start automatically after vCenter Server reboot or update
search cancel

Lookupservice fails to start automatically after vCenter Server reboot or update

book

Article ID: 318741

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

  • After rebooting the vCenter Server (often following an upgrade or patch), the vSphere Client displays a "no healthy upstream" error.
  • The lookupsvc fails to start automatically.
  • Manually starting services via service-control --stop --all && service-control --start --all resolves the issue immediately.
  • vCenter log /var/log/vmware/lookupsvc/lookupserver-default.log contains:
    [YYYY-MM-DDTHH:MM:SS.fffZ localhost-startStop-1 ERROR com.vmware.vim.lookup.impl.LdapStorage] LDAP action failed; host=<vcenter_fqdn>, port=389 com.vmware.sso.interop.ldap.LdapException: Can't contact LDAP server at com.vmware.sso.interop.ldap.LdapErrorChecker.CheckError(LdapErrorChecker.java:869) ~[ldap-lib-0.0.1-SNAPSHOT.jar:?] at com.vmware.sso.interop.ldap.OpenLdapClientLibrary.CheckError(OpenLdapClientLibrary.java:1219) ~[ldap-lib-0.0.1-SNAPSHOT.jar:?] at com.vmware.sso.interop.ldap.OpenLdapClientLibrary.ldap_sasl_srp_bind_s(OpenLdapClientLibrary.java:765) ~[ldap-lib-0.0.1-SNAPSHOT.jar:?] at com.vmware.sso.interop.ldap.LdapConnection.bindSaslSrpConnection(LdapConnection.java:670) ~[ldap-lib-0.0.1-SNAPSHOT.jar:?] at com.vmware.vim.lookup.impl.LdapStorage$LdapQuery.execute(LdapStorage.java:2283) ~[lookupservice-impl-0.0.1-SNAPSHOT.jar:?] (etc.)

Environment

VMware vCenter 7.x
VMware vCenter 8.x

Cause

The lookupsvc depends on the vmdird service. If vmdird takes longer to initialize, lookupsvc may attempt to start before the LDAP server is ready, leading to a startup failure.

Resolution

Manually restart all vCenter Server services: service-control --stop --all && service-control --start --all
 
Workaround:

Configure a start dependency for lookupsvc on vmdird:

Note: Ensure a fresh backup or an offline snapshot of vCenter Server is taken, before applying these steps:

  1. Open an SSH connection to vCenter Server Appliance and login with the root user.

  2. Create a backup copy of the file /etc/systemd/system/multi-user.target.wants/vmware-vmon.service in the /tmp directory using the following command:

    cp /etc/systemd/system/multi-user.target.wants/vmware-vmon.service /tmp/vmware-vmon.service.bak

IMPORTANT: Do not put the backup file within the /etc/systemd/system/ directory. This will cause stability issues in future updates.

  1. Edit this file using the vi editor:

    vi /etc/systemd/system/multi-user.target.wants/vmware-vmon.service

  2. In the [Unit] section of the file, find the entry starting with 'After=' and replace the dependency from vmafdd.service with vmdird.service.

For example, if the configuration is: After=network.target vmafdd.service vmware-stsd.service rsyslogd.service

Replace it with: After=network.target vmdird.service vmware-stsd.service rsyslogd.service

NOTE: Other entries in the line may vary depending on the specific vCenter Server Version, do not modify.

  1. Update the system configuration using the following command:

    systemctl daemon-reload

  2. To verify that the workaround fixed the problem, reboot the vCenter Server Appliance once.

Additional Information

Japanese Version:
vCenter Server 7.0 にてアップグレードあるいはアップデート後に再起動すると Lookupservice が自動起動に失敗する場合があるが、手動起動は正常に動作する