VMware or Hyper-V?

  • With virtualization become more and more popular the first decision is which virtual software solution do I build it on?

    The employer I work with has chosen VMware Enterprise solution. However what I have heard it does not support a cluster environment in the current version yet. I have no working experience with Hyper-V so I cannot say what it can and cannot do.

    Shawn Melton
    Twitter: @wsmelton
    Blog: wsmelton.github.com
    Github: wsmelton

  • Citrix also offers XenServer which can be ran independently or tightly integrated with Microsoft's Hyper-V. We currently use both Citrix XenServer and VMware in our environment and as an end user of the system, my experiences have been comparable on both systems.

    I know that Citrix and Microsoft have a close business relationship and I think Microsoft even allowed Citrix access to much of the Windows source code. This gives Citrix a clear advantage with allowing them to tailor their products with Microsoft's.

    What will the Microsoft/Citrix partnership speel out for VMware? :w00t: Well, there's some debate about whether or not VMware will be able to compete with XenServer & Hyper-V. The Register published an article last February (Citrix undercuts VMware with XenServer giveaway[/url]) that goes more in depth on the topic.

    In my opinion, I think VMware will probably be able to stay in the game. I think the Citrix/Microsoft's tag team efforts against VMware is going definitely going to put a real hurt on VMware's market share though.

  • I have got production SQL boxes on ESX and vSphere I find it very good, not really looked at Microsoft's HyperV option in any real detail though.

    Gethyn Elliswww.gethynellis.com

  • We use Hyper-V, but that is as much of a nod for this platform as I can give it. I'm still not completely sold on the idea of Virtualizing SQL Server, but need to read more of Brent Ozar's writings/workings before I say anything else.

  • Shawn,

    VMWare does support clustering if using RDM (raw device mappings). Clustering is not supported on VMFS. This a moot point though because I wouldn't recommend clustering on VM. VMWare for example has enough HA on the backend via vMotion to make Windows Clustering obsolete.

    I voted for VMWare so now the poll says 50\50. 😉

  • I'll tell you up front I used to be a sysadmin and VMware was the platform I used to administrate so I'm a tad biased. First, in regards to virtualizing SQL Server, you shouldn't be afraid of it as long as you understand virtualization and everything that goes along with it. There's a lot of resource abstraction and as a database administrator you need to know what's going on "underneath the covers" in your setup.

    As someone mentioned Brent's posts (which are great), also check out Jonathan Kehayias' posts (http://sqlblog.com/blogs/jonathan_kehayias/archive/2010/11/22/virtualizing-sql-on-vmware-reference-list.aspx). Jonathan presented at a VMware event in Orlando about his experience in virtualizing OSI Restaurant's (read also: Outback Steakhouse) SQL Server environment. This allowed me to understand certain nuances and go ahead and do the same (carefully) in my environment at the time.

    You mentioned clustering isn't supported in VMware, which is both true and not. You COULD setup a cluster but there's a lot of hassles. Nice thing about VMware is you can virtually "cluster" the VM itself using their High Availability component in vSphere (http://www.vmware.com/products/high-availability/overview.html). This basically lets you run a VM on two hosts at once and if a host goes down the VM is still up and running.

    Hyper-V I'm sure has some great stuff in it as well but VMware is so far ahead of everyone its almost unfair. Cost-wise I'm sure Hyper-V will look much more enticing since it "comes" with Windows and can run on Windows Core as well but VMware does something similar with ESXi.

    EDIT: Also if you're looking to learn about SQL Server and virtualizing, I highly encourage you to check out the PASS Virtualization Virtual Chapter at http://virtualization.sqlpass.org

    =============================================================
    /* Backups are worthless, Restores are priceless */

    Get your learn on at SQL University!
    Follow me on Twitter | Connect on LinkedIn
    My blog: http://sqlchicken.com
    My book: Pro Server 2008 Policy-Based Management

  • Hi

    I've used SQL Server on both VMWare and Hyper-V, and both were comparable in my experience.

    Brent Ozar is definitely the man to read regarding virtualisation. He gave a good tip at SQL Bits last year; only assign one virtual processor to each box. This means the hypervisor is not waiting for multiple processors/cores for the VM, and as soon as a processor becomes available it can allocate the cycles to the VM.

    Apparently Twitter did this and saw a massive performance increase.

    Mike.

  • I know this post was started some time ago but thought I'd contribute some info that I haven't seen in the other posts in case the original author is still interested. I've run SQL on VMWare and XenServer and have a sharepoint server running on HyperV now but not hitting it too hard yet. I think from the database performance perspective you're going to see comparable results from any of the three hypervisors, depending on proper configuration, for small and medium sized databases. Can't speak to VLDBs.

    The bigger difference between the three products are the features and the hassle associated with them. I really didn't care for XenServer from an administration standpoint, but have the least amount of experience there. HyperV is also more of a hassle administratively compared to VMWare what with the virtual machine config files getting corrupted easily and the increased necessity of host server reboots due to the monthly patch Tuesday Windows updates. Microsoft has available a "hypervisor only" verison of HyperV and maybe that requires fewer reboots and uses less host resources than when installing Server 2008 w/ HyperV, but I have no hands on experience with that one.

    As for high availability, VMWare provides hardware layer redundancy, not application layer redundancy. Same for HyperV. VMWare Enterprise includes HA (High Availability), vMotion, and FT (Fault Tolerance).

    With an HA cluster two or more ESX boxes are clustered together and a Virtual Machine running on one ESX host in the cluster will get migrated and booted up on another ESX host in the cluster in the case that the host machine it is running on goes offline. Notice the Windows VM has to boot up and will likely say to you "why was I shut down improperly before?"

    With vMotion you migrate the VM in a controlled fashion from one ESX box to another with no loss of user session. You use this for planned hardware maintenance and ESX updates.

    With FT you have a VM running on one host or ESX box and a mirror of that VM running on another box. If the host goes offline, client sessions get immediately redirected to the mirror and vSphere starts building a new mirror on some other ESX box in the cluster. This is like a combination of HA and vMotion and in fact uses the same technology.

    But the bad news is... what happens if the VM bluescreens due to a virus or some other problem? Or what if you need to install Windows updates and reboot the VM? What if you have to install a service pack on SQL Server? None of the above help in that situation.

    Still reading? OK, now I'm getting to the clustering question. VMWare does support MSCS or Failover Clustering as MS started calling it in Server 2008. But there are a lot of caveats. There's a "supported configurations" sheet that VMWare has out for each version of vSphere and none of them support Microsoft clustering when the shared storage is accessed over iSCSI or NFS or FCoE- only Fibre Channel is supported. Also, when using Fibre Channel they don't support NPIVs, which is very useful in virtual environments. (It's possible vSphere 5 now does support NPIV, I haven't read the specs closely).

    All that "does not support" stuff being said, it all works. I've setup Failover Clusters using both iSCSI storage and FC storage with NPIV. all in vSphere 4/4.1. I'm sure VMWare would just say to you, if you called for support, that they can give "Best Effort" support only.

    I know that was more like an article than a forum reply. In fact, I think maybe I have written about this elsewhere. But oh well, hopefully it is useful information.

    SQL Managed

  • Steve,

    That's a lot of great information. You should definitely consider submitting an article on virtual clustering!

    It has always seemed clustering in vm is much more hassle than it's worth. It is my understanding that you also can't vMotion clustered systems but I haven't tried this in practice.

    We recently had a vendor ask for SQL cluster in our VM environment. We instead settled on database mirroring which, to me, makes much more sense.

    Scott

  • Thanks Scott. I agree that it is a bit of a hassle. And I also would lean toward mirroring instead of clustering. Looking forward to the advancement in that area with SQL 2012.

    Here is a link to the VMWare knowledgebase article that lists all versions of vSphere with links to the PDFs with instructions for setting up Failover Clustering and all the caveats. It does list Fault Tolerance and vMotion as not being supported. I've never tried to vMotion one of my clustered SQL VMs but I imagine if it even works it could cause a failover event because of the sensitive nature of the cluster (keepalives). Performing a manual failover of the cluster and then shutting down the passive VM would be the way to go.

    Here is a link to a Microsoft blog laying out the "Guest Clustering" from their side.

    Steve

    SQL Managed

  • Sqlchicken (6/16/2011)


    Hyper-V I'm sure has some great stuff in it as well but VMware is so far ahead of everyone its almost unfair. Cost-wise I'm sure Hyper-V will look much more enticing since it "comes" with Windows and can run on Windows Core as well but VMware does something similar with ESXi.

    A tad late on the quote, but I agree with the sentiment. For now, my vote goes to VMWare.

    Jason...AKA CirqueDeSQLeil
    _______________________________________________
    I have given a name to my pain...MCM SQL Server, MVP
    SQL RNNR
    Posting Performance Based Questions - Gail Shaw[/url]
    Learn Extended Events

  • I have a good experience of working on VMWARE virtualization software and found very comfortable working with it. It has one of the best GUI to work with and there are lot more features to explore within it.

    Virtualization software are built mostly for serving cluster support management. Please make that you have the latest vmware updates so that it has the ability to run on specific hardware requirement.

    vmware is the best in the market.

    resume writing[/url] | examples of resumes[/url]

Viewing 12 posts - 1 through 11 (of 11 total)

You must be logged in to reply to this topic. Login to reply