vCenter Tomcat Collisions

I received the following message from a coworker of mine today (Todd Dresser), and thought it was well written and could be of great use to others:


I had an issue where my web services would keep crashing thus creating a ton of dump files (30,000 x 8 KB files) and also a high CPU load.  I learned some good troubleshooting steps and also things to avoid.  So the best log file to read from was the catalina.yyyy-mm-dd.log in the directory C:\Program Files (x86)\VMware\Infrastructure\tomcat\log.  I found I was receiving errors like this

SEVERE: StandardServer.await: create[8005]: Address already in use: JVM_Bind

 So the vCenter web services uses tomcat apache as the web server.  If there is another tomcat server running on the same server you must make manual changes to a configuration file to allow both of them to work.  During the vCenter install there are options to change ports but that is not all of them, in the file

C:\Program Files (x86)\VMware\Infrastructure\tomcat\config\server.xml

There is this line

<Server port=”8005″ shutdown=”SHUTDOWN”>

I guess 8005 is default for apache, so if you have two instances on a server one of those instances will fail to start every time.  In the end I just had to adjust these ports during the vCenter installation

8080 = 8081

8443 = 8444

And then post installation I edited the server.xml and adjusted port 8005 to 8006.  After that my web server was functioning correctly.  Without the web services you will lose your storage view and hardware tab reports and cannot run VMware vCenter SDK.  By the way the software that was conflicting with vCenter was Symantec Endpoint Protection Manager Console.  Hopefully this can help someone figure out a web services problem faster than it took me 😀

Looks like this is a documented on VMware’s site in KB 1009168.

Thanks for the great information Todd!