VMware VirtualCenter Server service does not start automatically after reboot
search cancel

VMware VirtualCenter Server service does not start automatically after reboot

book

Article ID: 343581

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

In some cases, a race condition can occur when the VirtualCenter Server service starts before the SQL database service it depends on is started.
This article provides steps to prevent the race condition from occurring.


Symptoms:
  • VirtualCenter Server service does not start after reboot
  • VMware Infrastructure (VI) Client cannot connect to VirtualCenter
  • You are using Microsoft SQL Server or SQL Express
  • VirtualCenter Server service can be started manually with no problems
  • In the vpxd.log file, you see entries similar to:

    ODBC error: (08001) - [Microsoft][SQL Native Client]Named Pipes Provider: Could not open a connection to SQL Server [2].




Environment

VMware vCenter Server 4.1.x
VMware vCenter Server 4.0.x
VMware VirtualCenter 2.5.x
VMware VirtualCenter 2.0.x
VMware vCenter Server 5.0.x

Cause

This issue may occur if the VirtualCenter Server service starts before one of the services on which it is dependent. The VirtualCenter Server service is dependent on the following services:
  • SQL Services
  • ADAM Services (when using linked mode in vCenter Server 4.x)

Resolution

To resolve this issue, add a dependency to the VirtualCenter service so that it starts only after the necessary services have started.

This solution assumes that the database server and the SQL server reside on the same machine. If the SQL server is on a different physical machine, you must ensure that the SQL server is functioning before attempting to start the VirtualCenter service.
In addition this same procedure can be used on any service that experiences this issue such as vCenter Server Webservices.
Note: This procedure modifies the Windows registry. Before making any registry modifications, ensure that you have a current and valid backup of the registry and the virtual machine. For more information on backing up and restoring the registry, see the Microsoft Knowledge Base article 136393.
To create a service dependency:
  1. Click Start > Run, type services.msc and press Enter.
  2. Locate any services that vCenter Server requires. For example, SQLEXP_VIM, ADAM_VCMSDS, or ADAM_VMwareVCMSDS.

    Note: Service names are different in SQL Express and full SQL implementations. For example, the service name in SQL Express is SQLEXP_VIM and in full SQL implementations, it is MSSQLSERVER.

  3. Open the service properties and note the service name. For example, MSSQL$SQLEXP_VIM.
  4. Click Start > Run, type regedit, and click OK. The Registry Editor window opens.
  5. Navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vpxd.
  6. Double-click the DependOnService key and add the Service name using the name identified in Step 4.
  7. Close the Registry Editor window.
  8. In the Services window, open the service properties for the service identified in Step 3.
  9. In the Dependencies tab, ensure that the VMware VirtualCenter service is listed as depending on the service.
  10. Repeat Steps 3 to 9 for any services that VirtualCenter requires.
If you are running Windows 2008 you can set the VMware VirtualCenter Server service to startup type Automatic (Delay) as follows:
  1. Click Start > Run, type services.msc, and click OK.
  2. Right-click on the VMware VirtualCenter Server service and click Properties.
  3. Change the startup type from Automatic to Automatic (Delay).
Notes:
  • For more information on the DependOnService key, see the Microsoft article 193888.
  • If the VMware SSL Certificate Automation Tool is being used, changing the service dependencies may impact the tool. The VMware SSL Certificate Automation Tool needs to be able to start and stop specific services.
  • Check and modify the startup type every time after a vCenter Server upgrade is carried out, as the startup may get reset to the default startup type of Automatic.


Note: The preceding links were correct as of April 25, 2011. If you find a link is broken, provide a feedback and a VMware employee will update the link.


Additional Information

There are differences in the way SQL 2005 and SQL 2008 handle the startup and the database readiness. SQL 2005 gives the database access immediately after the start up free for access (the method is FastRecovery), whereas SQL 2008 refuses to take connections until it finished with the Checking the databases, which can take up to 1 Minute.
For more information about Recovery Performance in SQL Server, see the Microsoft article http://msdn.microsoft.com/en-us/library/ms189262%28SQL.100%29.aspx.

Note: The preceding link was correct as of April 25, 2011. If you find the link is broken, provide feedback and a VMware employee will update the link.
再起動後に VMware vCenter Server サービスが自動的に開始されない
VMware VirtualCenter Server 服务在重新引导之后不会自动启动