Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 General SQL Server Forums
 New to SQL Server Programming
 SQL Server & Virtual Machines

Author  Topic 

munkdogg
Yak Posting Veteran

53 Posts

Posted - 2007-01-25 : 08:23:25
Good morning,

I am looking for some first-hand experiences from fellow DBA's where they had SQL Server running on a Win2K3 VM. What sort of issues (or successes) did you find re: resource sharing, swap files, etc? Are there any experiences where using a VM negatively affected your environment?

Thanks so much. What a great forum!

spirit1
Cybernetic Yak Master

11752 Posts

Posted - 2007-01-25 : 08:59:19
it's slow...

for testing purposes VM is ok, but for anykind of serious production you shouldn't do it.



Go with the flow & have fun! Else fight the flow
blog thingie: http://weblogs.sqlteam.com/mladenp
Go to Top of Page

russell
Pyro-ma-ni-yak

5072 Posts

Posted - 2007-01-25 : 10:50:34
We are processing several million requests a day in a virtualized environment.

But we aren't using MS VM, we are running VMWare ESX Server. 16 dual core processors. Lots of RAM.

With virtualization in general, you will pay a performance penalty, but if you have high end hardware the performance degradation will be offset. And the advantages from a management and HA standpoint are pretty strong. Only disadvantage I can think of is single-point-of-failure, which scares me to death (we do have a hot DR site though) but the reliability record of ESX is pretty strong.

If you virtualize SQL Servers but not the client servers that will read/write to it, then be sure to look at LAN speed. This will be the bottleneck if you suddenly expect a bunch of servers to share one NIC and it's only a 100Mb switch. Of course with a 1Gb switch you can push a lot of data through that port...
Go to Top of Page

Michael Valentine Jones
Yak DBA Kernel (pronounced Colonel)

7020 Posts

Posted - 2007-01-25 : 11:50:07
At least with the MS Virtual Server, each guest OS runs under a single host OS thread, so SQL server on a VM can take advantage of only one processor at a time.

I would look at running multiple databases under one SQL Server instance as a first option, and multiple SQL Server instances as a second option, before using a VM.

It may be a good option for a testing/development/evaluation environment where you want to test with different software levels, patches, etc. or where you doing things that are likely to call for server reboots.






CODO ERGO SUM
Go to Top of Page

munkdogg
Yak Posting Veteran

53 Posts

Posted - 2007-01-26 : 09:21:39
Thanks to you all. This info is fantastic!
Go to Top of Page

eyechart
Master Smack Fu Yak Hacker

3575 Posts

Posted - 2007-01-26 : 11:06:00
I'm with MVJ on this. I would use a VM for dev/test type environment or light load production systems.

My experience has been with ESX 2.5 systems (we are just bringing 3.0 online) and have found the performance of dual cpu virtual machines to be terrible. large memory VMs also suffer performance problems as well (more than 2GB RAM allocated). Quite a bit of tuning of the ESX environment is needed to get a SQL Server VM to perform well in a VM environment. We now only allocate single cpu, low memory (1.5GB or less), single instance virtual machines for our SQL systems because of this. We are running on the latest hardware as well (opteron or dual/quad core xeons).

ESX 3 changes this somewhat, but I don't have enough experience with VMs running in our new environment to really comment on it.



-ec
Go to Top of Page
   

- Advertisement -