Joe Webb Blog

Musing and observations about SQL Server, other technogies, and sometimes just life in general

SQL Server Virtualization

Next week at the Nashville SQL Server User Group, John Rives of Amniox is going to speak about using SQL Server with clustered virtualization. Unfortunately, I'm not going  to be able to attend due to a prior commitment, however I have spoken with John about his presentation and it definitely sounds promising. If you're in the area, I'd encourage you to come on out. I certainly wish I could be there.

I don't have any SQL Servers in a virtualized environment. In fact, I have only worked with one company that does, and that is on a very underutilized server with little load so it's not very representative of actual usage and performance.

So, with little actual experience from which to draw, I'm left wondering about the benefits of virtualization. Advocates often point to virtualization's better use of resources through increased density. I can see that, but does that benefit outweigh the complexity that it creates? Especially for troubleshooting performance issues due to resource contention. I don't know.

I've done a little research in the area and have found the following online resources. I thought I'd share them in case you're considering creating your own virtualized SQL world.

If you've run SQL Server in a virtualized environment, I'd love to hear of your experiences. Drop me an email or add a comment in the feedback section below.



kick it on

Legacy Comments

re: SQL Server Virtualization
We did have our production SQL server virtualized. And now we're moving back to a dedicated physical server. We had SQL2005 Enterprise on VMWare, and the performance just wasn't matching up with what VMWare promised. Several of their consultants and who knows how many thousands of dollars later we're going back to the way things were.

I think I'm OK with having our app servers virtualized, but SQL - especially in production - I haven't had a good experience with. We virtualized our 6 production boxes, and we're taking them all back to physical machines.

re: SQL Server Virtualization
We've got quite a few SQL Servers on VMs, some are even clustered. Larger databases and those that have heavy utilization should go on physical hardware.

All of our apps are on VMs or blade servers.

Richard Fryar
re: SQL Server Virtualization
One of my clients has 3 production SQL Servers (all OLTP) on VMWare (ESX Server) and the performance is surprisingly good.
One of these has about 100 users logged on at any one time.

I think this works because the database is only 6GB, and the virtual server has 12GB RAM allocated, so I/O is not such an issue.

I was a bit of a luddite before setting these servers up but have now been converted! One major disadvantage over a consolidated physical environment is that there are more instances to administer.

Another problem I have found is that perfmon counters are unreliable, and you have to fall back on the built-in monitoring provided by ESX.

John Rives
re: SQL Server Virtualization
I'm sorry you couldn't make it to the presentation. In truth, there are more reasons not to virtualize SQL server than there are to virtualize it. That's today - going forward the landscape is likely to change as Microsoft moves further into the virtualization market. At some point the question will cease being about whether or not to virtualize I but how best to virtualize.As clustered and managed virtualization becomes mainstream we will begin to see bare metal deployments arg quaint reminders of bygone times.

The presentation is up on our site if you'd like to view it.

Raj Dhyani
re: SQL Server Virtualization

I'm going for an implementation of systems and i want to put my apps in virtualization. can anybody suggest how to for it.....

Joe Webb
re: SQL Server Virtualization
Are you implementing a development system? Or a production server?

If you're putting together a development system, I've described my system over on my new blog site -

re: SQL Server Virtualization
In my company we have 8 VMware servers where application is running. Our application is real time so small data loss cant be bearable. We have found many issues with these servers. We performed a testing by setting up a VMware server where we install SQL Server client and try to perform multiple DML activity to the database server. We often get different type of error eg Transport error. But if we perform the same activity from physical server we have never experience such issue. So this shows that the VMware are not as good as physical server. it might be good for small database size but I have bad experience with VMware.