Executive Summary: VMware's ESX Server 3.5 and Windows Server 2008's Hyper-V are server virtualization products that provide comparable performance but have very different feature sets and installation processes. ESX Server 3.5 offers slightly better performance, as well as an easy-to-use management console and a feature-rich platform. Hyper-V offers an attractive price point, a thin hypervisor, and support for large host systems and more active virtual machines (VMs).

Companies using SQL Server have been reluctant to jump onto the virtualization bandwagon. Long-time observers of server virtualization know that virtual machines (VMs) don’t perform as well as physical systems and I wanted to know if server virtualization for SQL Server is ready for prime time yet. So I ran a few tests.

Virtualization Performance
In the lab I tested two leading server virtualization products: VMware’s ESX Server 3.5 and Windows Server 2008’s Hyper-V (using the original beta code that was shipped with Server 2008). My big takeaway: Both platforms are definitely ready for production server workloads.

The hardware platform I used was an HP ProLiant ML370 Generation 5 (G5), a rack-mounted 4U server. The ProLiant ML370 G5 has two Quad-Core Intel Xeon processors running at 1.86GHz, 8GB of RAM, and eight 72GB 15,000 RPM drives configured as a RAID array. My SQL Server tests used four active SQL Server VMs, each servicing 40 active connections. The ProLiant ML370 G5 handled this workload well. Comparing the results of the response time obtained running one workload on one VM to the response time of running all workloads on all servers, I found that the fully loaded workload took about 3.5 times as long to run. I found this to be a surprisingly good result because the overall workload of the physical machine was 40 times higher. I performed this test with no tuning, and I didn’t add any network cards. But even without optimization, there’s no doubt that virtualization can drive up server utilization rates and derive more value from today’s high-powered multi-core server systems.

Response times for the various tests were consistent with each other, which should help you assess the service level agreement (SLA) you could meet running virtualized SQL Server systems. Although my tests were below the transaction level of a large enterprise database on a dedicated physical server, the tests definitely show that virtualized SQL Server systems are able to support server consolidation scenarios for small and midsized businesses. You can read more about the VMware ESX Server and Microsoft Hyper-V comparison in “Virtualization Shootout: Hyper-V vs. ESX Server 3.5,” page 41, InstantDoc ID 99218.

Challenges of Moving to a Virtual Platform
So what challenges do you face when moving SQL Server to a virtual platform? Actually moving the server system is the first challenge. To do the job you can use a physical-to-virtual (P2V) tool such as the VMware Converter for VMware implementations (www.vmware.com/download/converter/). Or you can use the Microsoft System Center Virtual Machine Manager 2007 (SCVMM) for Microsoft VM implementations such as Virtual Server (www.microsoft.com/systemcenter/scvmm/default.mspx). You could also try a third-party P2V conversion tool, such as Platespin PowerConvert (www.platespin.com/products/powerconvert/) or Vizioncore vConverter (www.vizioncore.com/vConverter.html). Or you can just build a new VM, install SQL Server, then detach and re-attach your databases.

When you’re considering server consolidation, another challenge is network bandwidth. Although a single server might support all its connections using a single network card, that’s not likely to be the case when you use virtualization to consolidate servers. You can use System Monitor to ascertain the correct number of NICs.

You might see licensing as a challenge. Did you know that the license for SQL Server 2005 Enterprise Edition allows an unlimited number of virtual SQL Server instances? You can use any type of virtualization technology under this license,
including VMs from VMware.

Ready for Prime Time?
My tests show that virtualization technology is ready for SQL Server. Today’s virtualization platforms can support very demanding workloads. It doesn’t take a crystal ball to see that in the next couple of years many SQL Server systems will be going virtual.

End of Article




You must log on before posting a comment.

If you don't have a username & password, please register now.

Reader Comments

very timely for us, thanks!

bolsen

Article Rating 5 out of 5

You have no comments regarding its readiness for SQL clusters. Is VMWARE or HYPER-V certified to work with SQL clustered environments? If so.... would you do it?

bkwasnica

Article Rating 5 out of 5

I'm a bit confused by this. We have 1 server, running 4 virtual servers, each running servicing 40 connections.

You say that:

"Comparing the results of the response time obtained running one workload on one VM to the response time of running all workloads on all servers, I found that the fully loaded workload took about 3.5 times as long to run.I found this to be a surprisingly good result because the overall workload of the physical machine was 40 times higher."

I'm not sure how you came to the 40 times higher number. Surely if we run a full workload on 1 virtual server, and find that full workloads on 4 virtual servers is 3.5 time slower, then this is only marginally better than expected (4 times slower) rather than radically better..

mhickin

Article Rating 3 out of 5

To be honest, I'm not a big fan of virtualization, but by reading this article, I just might reconsider it. Before I was mainly working with VM hosted upon an OS, messing up all my perfmon counters. I hope this will be solved with these solutions. However, how should I interpret this article by MS on virtualization? http://support.microsoft.com/kb/956262 It seems that MS doesn't support virtualization unless you can simulate the issue on a non-virtualized environment, something often not realistic.

geertDCOD

Article Rating 4 out of 5

What is now the outcome of al the tests. Yust: Hey Virtualization is ready for SQL. Does this really help. What do I need to optimize VM installation for example would be interesting.

TEST12345678901

Article Rating 1 out of 5

 
 

ADS BY GOOGLE