Tag Archives: vSphere

ESX and Virtual SMP

In my day job I work with VMWare ESX as our server virtualization platform.  We’ve been using this strategy for 18-20 months now.  We’ve been very happy with the scalability and flexibility that this has provided, more importantly the redundancy and HA.  It truly has decreased our costs, and more importantly allowed us to be more agile in our relatively small department of just two administrators.

In our environment we have HP server hardware with NetApp SAN storage running vSphere 4 Enterprise edition.  This has been been a great architecture and has exceeded our expectations.  That was until this week.

We have an application in one of our business lines that has been running for about 4 years now and has been neglected since it was deployed.  Since it has been running without errors it has been at the bottom of our priority list due to budget and resources to address the pain points the platform has.

The most obvious bottleneck on this system is processing power.  This platform is very CPU intensive followed by disk I/O.  These make for long times to complete jobs.  Following this we are behind on the software version the platform uses for its database which we know is holding up efficiency.

We decided to bring this whole server/application into VMWare to provide the redundancy and HA that it offers, as well as be able to use the newer HP multi-core hardware that ESX is running on to assign more logical CPUs to the application.  We did some benchmarking with two, and four cores and found a drastic decrease in processing time.  We wanted to ultimately take it up to the maximum allowed by ESX which is 8 cores.  After editing the settings we tried to start up the guest and we got a pop-up window stating that the host the guest VM was running on did not support the number of cores we had assigned.

This was the frustrating part.  When looking for a reason why we couldn’t run the number of processors we tried we were looking all through documentation and product specs the only reference that seemed to make sense was Virtual SMP.  We didn’t exactly know what this was but there was a clear reference to Four way and Eight way Virtual SMP in the description of the different Levels of vSphere 4.  In the Enterprise version you get ‘Four-way Virtual SMP’ and in Enterprise Plus you get ‘Eight-way Virtual SMP.’  After doing some more poking around it became clear that this meant you can only assign more than 4 logical CPUs to a guest VM if you have the Enterprise Plus edition of vSphere 4.

What this means to us is that we cannot assign the 8 processors to the guest VM like we planned to without purchasing vSphere 4 Enterprise Plus licensing.

You get only a few benefits by going to Enterprise Plus,  the now understood Eight-way ‘vSMP’, the ability to have up to 12 core processors (there are no processors that I know of that come close to this), vNetwork Distributed Switches, and host profiles.

Our problem now becomes the business is already expecting the 8 CPU system, and they have also come to expect the redundancy and HA.  So it seems we’ll be upgrading to Enterprise Plus in our cluster.