Windows Server 2012 R2 for the DBA: 10 Reasons It Matters
Happy Thursday, everyone. By now, Symon Perriman has given his talk Continuous Availability: Deploying and Managing Clusters Using Windows Server 2012 R2 at TechEd North America 2013. I wasn’t there, but I’m looking forward to seeing the recording. Why do I bring this up? As a Cluster MVP (meaning Windows), I haven’t been able to talk about Windows Server 2012 R2 until things have been made public by Microsoft themselves. The curse of respecting NDAs
Windows Server 2012 R2 represents a significant step forward in quite a few areas – including Windows Server failover clustering (WSFC). Here’s what I think are some of the killer features and why they matter if you’re deploying SQL Server:
1. Dynamic Witness
When I saw this one last month, I almost stood up and did the happy dance. Quorum is a difficult topic and is going to get at least a chapter in my new book. Windows Server 2012 (no R2) introduced the concept of dynamic quorum where in most cases you could get to last man (nee node) standing with a WSFC. However, you still had to manage the witness as you went from even to odd number of votes. Dynamic witness changes that. Assuming single subnet/site for a moment, what dynamic witness brings to the table is that you designate a witness and the WSFC will bring it in and out depending on your scenario/need. For those deploying more simple SQL Server availability groups scenarios especially, this is really amazing. Dynamic witness isn’t perfect. For example, in the multi-site scenario I wish it let you pick a witness in each site and used whichever one it needed to based on cluster status, but hey, this is a big, big step forward.
2. Shared VHDX
Despite my normal caveats for clustering VMs, I’m pretty excited about shared VHDX – especially for lab scenarios. iSCSI is easy, but I can tell you from doing the labs in my HA class, some struggle with it. This will make things VERY interesting for doing labs as well as test clusters, not to mention production-based WSFCs with SQL Server FCIs. For more information, head on over and watch Jose Barreto and Steven Ekren’s talk from TechEd Application Availability Strategies for the Private Cloud. The VHDX stuff starts around 34:00 (but the whole talk is good).
3. Storage Quality of Service (SQOS)
I have to agree with Aidan Finn on this one. Yes, this is for Hyper-V and I know many of you are using VMware for virtualization (where they have had this for awhile with the Limit IOPS option). But we SQL Server types know I/O is a premium and absolutely necessary for performance. This will give admins some form of control over how many I/Ops a Hyper-V VM can have if needed. If you want to see more information, check out the TechEd presentation Windows Server 2012 Hyper-V Storage Performance (the SQOS stuff starts in around 42:55).
4. Hyper-V Usability Improvements
One of the reasons I’ve kept VMware Workstation around is that you can copy and paste both text and files from VMs easily. With Hyper-V, you need to create an ISO and mount it or have a network share. No more! With the new Hyper-V (and I assume it will be in the desktop 8.1 as well), you can now do copy and paste into and out of VMs. This is huge, especially if you need to get demos or test environments up, or if you’re in a Hyper-V prod VM and need to get a T-SQL script in. For a demo, see around 16:30 in Ben Armstrong’s talk Hyper -V – What’s New in Windows Sever 2012 R2. Great, great stuff - and about time. Thank you, Microsoft.
Another cool one is that if your underlying hypervisor is running R2 Datacenter Edition, the VMs will know and use the underlying license to activate. Ben talks about it around 8:10 in that video. This has me VERY excited as someone who creates a lot of VMs for demos and will save me considerable time. (As an aside, Aidan Finn has a great list of all the Hyper-V enhancements here).
5. Generation Two VMs in Hyper-V
While the use case may not be there for everyone and there are some limitations, v2 VMs allows you to do things like secure boot and have more streamlined VMs. For info, see the aforementioned talk from Ben Armstrong starting around 5:50.
6. The Rise of RDMA, CSV, SMB, and “Commodity Storage”
RDMA and SMB are nothing new; SQL Server has supported SMB starting in SQL Server 2012. However, the drive for more I/Ops and cheaper solutions, as well as improvements in Windows, is driving soluions to look at alternate solutions. In the SQL Server world, we see this already with things like Fusion I/O, Violin, etc. Look, I’m not saying fibre channel is dead and your SAN investments should be thrown out. But the world is changing, and it’s possible to get crazy performance with other technologies which are network based and NOT iSCSI. You should read Jose Barreto’s blog on a regular basis if you are at all interested in storage. Also check out his TechEd presentation Understanding the Hyper-V over SMB Scenario, Configurations, and End-to-End Performance. Note that he’s using sqlio to generate performance Since SQL Server 2014 will support CSVs for FCI deployments (more on this in a later blog post and in my book), things are going to get very interesting.
7. Improved Troubleshooting/Diagnosability with WSFC
Another thing I’ll address more later, but glad to see there are more things to look at if things aren’t going right.
8. New Force Quorum Resiliency
If you manually force quorum in Windows Server 2012 R2, there are some new protections that will help prevent split brain scenarios. This is huge and solves some problems with multi-site WSFCs which are common with AGs. This isn’t a panacea for all scenarios but a major improvement.
9. Support for Simultaneous Loss of 50% in the WSFC
Prior to Windows Server 2012 R2, if you hit 50% of your voters/nodes/whatever lost, your WSFC would go down. However, with R2, you can lose 50% and still be up. This is essentially controlled by a parameter, but man, for availbility of FCIs and AGs, this is amazing.
10. Partially Removing Reliance on AD for AG and FCI Deployments
I saved one of the best for last. This is absolutely HUGE. One of the biggest problems that I see is that whether deploying an FCI or an AG with a Listener, the VCO creation process fails because of AD permissions. Clusters are very tied into AD and have been moreso since Windows Server 2008. However, with Windows Server 2012 R2, the reliance on AD is now ending if you want it to. This means that we’re going back to a Windows Server 2003-like deployment where there are no computer objects associated with cluster object names. There are some caveats, the big one being if you need Kerberos authentication you still need a VCO. This is great for those who are using SQL Server authentication mainly and no real AD stuff in SQL and not using Kerberos. This will remove a lot of complexity from some SQL Server-based WSFC deployments.