This happens when the virtualcenter service tries to start before some of its dependencies are up and running. Typically due to SQL Server not being in a running state when it tries to startup.
If your in windows 2008 you can choose the service to start automatically (delayed), and most of the time this will resolve the problem. If you want to do it properly, and in a more clean way…. you’ll need to add SQL as a dependency.
Open regedit and go to the following key; (find the sevice name that virtual cetner is running under – vpxd in this case)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vpxd
Open and modify the “Depend on Service” Multi-String and append the following (specific to my environment, but Adam for vmware and sqlserver)
MSSQLSERVER
ADAM_VMwareVCMSDS
So my DependOnService Multi-String now reads;
ProtectedStorage
lanmanworkstation
MSSQLSERVER
ADAM_VMwareVCMSDS
Done.
On next reboot the virtual center service will wait for its dependencies to start before it tries to start itself.