Every time Microsoft gave us a new version of Hyper-V (including W2008 R2 SP1) we got more features to get the solution closer in functionality to the competition. With the current W2008 R2 SP release, I reckon that we have a solution that is superior to most vSphere deployments (think of licensed or employed features). Every objection, one after the next, was knocked down: Live Migration, CSV, Dynamic Memory, and so on. The last objection was NIC teaming … VMware had it but Microsoft didn’t have a supported solution.
True, MSFT hasn’t had NIC teaming and there’s a KB article which says they don’t support it. NIC teaming is something that the likes of HP, Dell, Intel and Broadcom provided using their software. If you had a problem, MSFT might ask you to remove it. And guess what, just about every networking issue I’ve heard on on Hyper-V was driver or NIC teaming related.
As a result, I’ve always recommended against NIC teaming using OEM software.
We want NIC teaming! That was the cry … every time, every event, every month. And the usual response from Microsoft is “we heard you but we don’t talk about futures”. Then Build came along in 2011, and they announced that NIC teaming would be included in W2012 and fully supported for Hyper-V and Failover Clustering.
NIC teaming gives us LBFO. In other words, we can aggregate the bandwidth of NICs and have automatic failover between NICs. If I had 2 * 10 GbE NICs then I could team them to have a single pipe with 20 Gbps if both NICs are working and connected. With failover we typically connect both NICs to ports on different access switches. The result is that if one switch, it’s NIC becomes disconnected, but the other one stays connected and the team stays up and running, leaving the dependent services available to the network and their clients.
Here’s a few facts about W2012 NIC teaming:
NIC teaming is easy to set up. You can use Server Manager (under Local Server) to create a team. This GUI is similar to what I’ve seen from OEMs in the past.
You can also use PowerShell cmdlets such as New-NetLbfoTeam and Set-VMNetworkAdapter.
One of the cool things about a NIC team is that, just like with OEM versions, you can create virtual networks/connections on a team. Each of those connections have have an IP stack, it’s own policies, and VLAN binding.
In the Hyper-V world, we can use NIC teams to do LBFO for important connections. We can also use it for creating converged fabrics. For example, I can take a 2U server with 2 * 10 GbE connections and use that team for all traffic. I will need some more control … but that’s another blog post.