JSCSJSCS
Contributor
Contributor

VMware Center Server Service will not start on reboot

I am pulling my hair out. If I recreate my VCS VM from scratch, it works fine. But if I do ANY updates to it (patches, etc.). The VCS service will not start automatically. I can start it manually. I've been reading this forum for hours and trying everything. I do not have IIS installed. I have added the MSQL Express dependancy. Nothing works. I have two significant application events in the XP events service log:

Event Type: Failure Audit

Event Source: MSSQL$SQLEXP_VIM

Event Category: (4)

Event ID: 18456

Date: 5/7/2009

Time: 7:43:52 AM

User: NT AUTHORITY\SYSTEM

Computer: WINXP

Description:

Login failed for user 'NT AUTHORITY\SYSTEM'.

Followed by:

Event Type: Error

Event Source: VMware VirtualCenter Server

Event Category: None

Event ID: 1000

Date: 5/7/2009

Time: 7:43:52 AM

User: N/A

Computer: WINXP

Description:

The description for Event ID ( 1000 ) in Source ( VMware VirtualCenter Server ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: Failed to intialize VMware VirtualCenter. Shutting down....

I get this in the system events log:

Event Type: Error

Event Source: Service Control Manager

Event Category: None

Event ID: 7024

Date: 5/7/2009

Time: 7:43:54 AM

User: N/A

Computer: WINXP

Description:

The VMware VirtualCenter Server service terminated with service-specific error 2 (0x2).

The VM Log shows this:

Log for VMware VirtualCenter, pid=1764, version=2.5.0, build=build-119598, option=Release, section=2

Current working directory: C:\WINDOWS\system32

HOSTINFO: Seeing Intel CPU, numCoresPerCPU 1 numThreadsPerCore 2.

HOSTINFO: numPhysCPUs is 0, bumping to 1.

HOSTINFO: numCores is 0, bumping to 1.

HOSTINFO: This machine has 1 physical CPUS, 1 total cores, and 1 logical CPUs.

Log path: C:\Documents and Settings\All Users\Application Data\VMware\VMware VirtualCenter\Logs

Initializing SSL

Using system libcrypto, version 90709F

Vmacore::InitSSL: doVersionCheck = true, handshakeTimeoutUs = 30000000

Starting VMware VirtualCenter 2.5.0 build-119598

Log directory: C:\Documents and Settings\NetworkService\Local Settings\Application Data\VMware\vpx.

Account name: SYSTEM

Enabled low-frag process heap.

Enabled low-frag crt heap.

34 max LROs

6 reserved internal LROs

6 reserved blocker LROs

6 reserved short LROs

4 reserved long LROs

600-second task lifetime

ODBC error: (28000) - [SQL Native Client][SQL Server]Login failed for user 'NT AUTHORITY\SYSTEM'. Failed to intialize VMware VirtualCenter. Shutting down... Forcing shutdown of VMware VirtualCenter now

So I think my problem has to do with the system logging in to SQL Express at start up.I do not know why using windows update on a "working" VCS VM screws this up somehow. My VCS is install locally on the sever, as is SQL Express from the VCS install medai with defualt settings.

0 Kudos
6 Replies
admin
Immortal
Immortal

Note: Originally found from

If addition of dependency fails the following steps may workaround the issue:

Create a .bat file with following script:

net start MSSQL$SQLEXP_VIM

ping 127.0.0.1 -n 120 -w 1000 > null

net start vpxd

Note: for SQL Server substitute MSSQLSERVER in the above batch file instead of MSSQL$SQLEXP_VIM.

Set script to run on boot. For 2003 systems:

Open the local computer policy (Start > Run and type in gpedit.msc and press Enter)

Expand Computer Configuration\Windows Settings\Scripts

In the right-hand pane, double-click Startup and add your script.

Set SQL and VC services to manual startup.

0 Kudos
JSCSJSCS
Contributor
Contributor

Thank you feedbuzzard. That worked. Or I should say the "work-around" worked. I wish vCenter would just work as advertised. As a new VM user, I am surprised at how much "tweaking" there is to get things to run as they should. This script looks like it does what the dependencies should have. Why dependencies did not work, I guess we will never know.

Thanks again!

0 Kudos
JSCSJSCS
Contributor
Contributor

This may be of some help to the next person, but after getting this to work, I downloaded vSphere and installed the upgrade. The web access would not work and I got some service connaction errors in the plugin management area for Harware Status and Server Status.

The upgrade changed my vCenter Server service back to "Automatic". Also, the VMware vCenter Management Webservice was not starting. Event log indicated it required the vCenter Server to be running.

So I set that service to Manual and add another ping delay and "net start vctomcat" to the bottom of the startup script. Then everything worked again.

Jim S.

0 Kudos
apaladi
Contributor
Contributor

Or, even better:

sc config MSSQL$SQLEXP_VIM start= demand
net start MSSQL$SQLEXP_VIM
ping 127.0.0.1 -n 10 -w 1000 > nul
sc config vpxd start= demand
net start vpxd
ping 127.0.0.1 -n 10 -w 1000 > nul
sc config vctomcat start= demand
net start vctomcat

0 Kudos
KillerD
Contributor
Contributor

I just came across this problem and wanted to post the solution I used to fix this.

I set the the VMware VirtualCenter Server service to depend on the MSSQL service using the Service Control Manager.

From the command prompt:

sc config vpxd depend= rpcss/lanmanworkstation/mssql$sqlexp_vim

You have to re-list the dependencies that are already there or else you will replace them.  So, on my system the VMware VirtualCenter Server service name was called vpxd and it depended on the RPC (rpcss) and Workstation (lanmanworkstation) services.  To which I added the mssql$sqlexp_vim service.

This seems to be essentially what the suggested batch file does, which is wait for the sql service to start before starting the vmware services.

0 Kudos
Tirelibirefe
Contributor
Contributor

That code is not working...

PS C:\> .\vcenter_startup.ps1
Ampersand not allowed. The & operator is reserved for future use; use "&" to pass ampersand as a string.
At C:\vcenter_startup.ps1:2 char:32
+ ping 127.0.0.1 -n 120 -w 1000 & <<<< gt; null
    + CategoryInfo          : ParserError: (:) [], ParseException
    + FullyQualifiedErrorId : AmpersandNotAllowed
0 Kudos