Virtualized SQL Server: Why not?

后端 未结 14 701
野趣味
野趣味 2021-01-30 05:43

The IT department where I work is trying to move to 100% virtualized servers, with all the data stored on a SAN. They haven\'t done it yet, but the plan eventually calls for mo

相关标签:
14条回答
  • 2021-01-30 06:02

    There is some information concerning this in Conor Cunningham's blog article Database Virtualization - The Dirty Little Secret Nobody is Talking About.... To quote:

    Within the server itself, there is suprisingly little knowledge of a lot of things in this area that are important to performance. SQL Server's core engine assumes things like:

    1. all CPUs are equally powerful
    2. all CPUs process instructions at about the same rate.
    3. a flush to disk should probably happen in a bounded amount of time.

    And the post goes on elaborating these issues somewhat further also. I think a good read considering the scarcity of available information considering this issue in general.

    0 讨论(0)
  • 2021-01-30 06:06

    Old Question with Old Answers

    The answers in this thread are years old. Most of the negative points in this entire thread are technically still correct but much less relevant. The overhead cost of virtualization and SAN’s is much less a factor now than it used to be. A correctly configured Virtualization host, guest, network, and SAN can provide good performance with the benefits of virtualization and operational flexibility including good recovery scenarios that are only provided by being virtual.

    However, in the real world it only takes one minor configuration detail to bring the whole thing to its knees. In practice your biggest challenge with virtual SQL servers is convincing and working with the people responsible for the virtualization to get it set up just right.

    Irony, in 100 percent of the cases where we took production off of the virtualization and moved it back to dedicated hardware performance went through the roof on the dedicated hardware. In all of these cases it was not the virtualization but the way it was setup. By going back to dedicated hardware we actually proved that the virtualization would have been a much better use of resources by factors of 5 or more. Modern software is usually designed to scale out across nodes so virtualization works to your advantage on that front as well.

    0 讨论(0)
  • Note there are some specialty virtualization products out there that are made for databases that might be worth looking into instead of a general product like VMWare.

    Our company (over 200 SQL servers) is currently in the process of deploying HP Polyserve on some of our servers:

    HP PolyServe Software for Microsoft SQL Server enables multiple Microsoft SQL Server instances to be consolidated onto substantially fewer servers and centralized SAN storage. HP PolyServe's unique "shared data" architecture delivers enterprise class availability and virtualization-like flexibility in a utility platform.

    Our primary reason for deploying it is to make hardware replacement easier: add the new box to the "matrix", shuffle around where each SQL instance resides (seamlessly), then remove the old box. Transparent to the application teams, because the SQL instance names don't change.

    0 讨论(0)
  • 2021-01-30 06:07

    SQL Server is supported in a virtual environment. In fact I would recommend it seeing that one of the licensing options is per socket. This means you can put as many SQL Server instances in a virtualized (e.g. Windows 2008 Server Datacenter) system as you like and pay only per processor socket the machine has.

    It's better than that because DataCenter is licensed per socket with unlimited Virtual machine licenses as well.

    I'd recommend clustering your Hyper-V on two machines however so that if one fails the other can pick up the slack.

    0 讨论(0)
  • 2021-01-30 06:10

    You are looking at this from the wrong angle. First, you are not going to find White Papers from Vendors why you should "not" virtualize or why you should Virtualize.

    Every environment is different and you need to do what works in your Environment. With that said, there are some servers that are perfect for virtualization and there are some that should not be virtualized. For example, if your SQL Server/s are doing millions and millions of transactions per second, like if your server was located at the NYSE or the NASDAQ and millions and millions of dollars depend on it, you probably should not virtualize it. Make sure you understand the ramifications of virtualizing an SQL server.

    I've seen where people virtualize SQL over and over just because Virtualization is cool. Then complain later on when the VM server does not perform as expected.

    What you need to do is set a benchmark, fully test the solution you want to deploy and show what it can and can't do so you don't run into any surprises. Virtualization is great, it is good for the envronment and saves through consolidation, but you need to show why your supervisors why you should not virtualize your SQL Servers and only you can do this.

    0 讨论(0)
  • 2021-01-30 06:13

    Here's some VMWARE testing on it.. http://www.vmware.com/files/pdf/SQLServerWorkloads.pdf

    Granted, they do not compare it to physical machines. But, you could probably do similar testing with the tools they used for your environment.

    We currently run SQL Server 2005 in a VMWARE environment. BUT, it is a very lightly loaded database and it is great. Runs with no problems.

    As most have pointed out, it will depend on your database load.

    Maybe you can convince the IT Department to do some good testing before blindly implementing.

    0 讨论(0)
提交回复
热议问题