For the remaining days of our 12 Days of Hyper-V Tips and Tricks, I’ll be focusing on new features that are coming in Windows 8. I’ve been using Hyper-V since it first shipped, and with each release, more and more of the “must haves” and “nice to haves” have been filling in, to the point that with Windows 8, I’m not looking for much more in my Virtualization solution. Some of my favorite things that are new in Windows 8 are:
- Cluster Shared Volume (CSV) 2.0
- In-box NIC Teaming
- Storage Migration
- Concurrent Live Migration
- Hyper-V Cmdlets
- Hyper-V Replica
Today, we’ll focus on NIC Teaming.
In last year’s MMS/Tech-Ed Hyper-V FAQ Tips and Tricks sessions, we had a few questions about NIC teaming, and Nathan Lasnoski wrote up this response regarding NIC teaming in Windows 2008 R2 SP1, posted here
“How do I enable Hyper-V NIC teaming?”
Although Microsoft has offloaded this capability to the network card manufacturers, it is a capability that works, assuming you’ve configured the teaming software properly. There are several different types of load balancing configurations (in Broadcom BASP and Intel):
- Smart Load Balancing with Failover: This implementation is sort of like multicast, where all the switch ports have different MAC addresses and theoretically can be implemented without any switch changes. We’ve found this relatively easy to configure, but prone to network integration issues.
*Link Aggregation (802.3ad): This implementation aligns with the IEEE 802.ad (LACP) specification. In this configuration all adapters receive traffic on the same MAC address. In this configuration you’ll need to have a switch which supports LACP integrations. I’ve seen people who have had a lot of success with this option.
*Generic Trunking (FEC / GEC) / 802.3ad-Draft Static: This implementation is similar to 802.ad link aggregation, but instead of integrating with LACP, it uses a trunking mechanism at the switch level, such as EtherChannel. We’ve had success with this on Cisco, HP, and Dell switches. This implementation type has been the predominate option we’ve used because of its ease of configuration and because we’ve experienced very few issues with it. It should be noted that when using Intel NICs, which configuration is called “Static Link Aggregation” vs. “IEEE 802.3ad Dynamic Link Aggregation”
To configure the NIC teaming integration with Hyper-V follow these configuration steps:
*Install Hyper-V role and clear networks
*Install and configure teaming software
*Connect the team to a Hyper-V virtual network
- We’ve found it useful to enable “VLAN Promicuous Mode” if the feature is available, as that allows for VLAN tagging to work properly.
- Make sure to fully test your configuration before moving into production. This is especially true for live migration and access to teams from other networks or VLANs. Also, if you run into issues, with virtual machine networking, make sure you aren’t running into an IC or hotfix issue that is not related to teaming.
*We have tended to be very careful about offloading features, often disabling them completely
Teaming in Windows 8
In Windows 8, the story changes pretty dramatically. Microsoft is looking to support NIC Teaming natively in a totally vendor agnostic way. Regardless of your NIC brand, you just run a simple cmdlet (or make a few clicks in a GUI if you prefer) and you have a team. Virtualization MVP Alessandro Cardoso just wrote a great post on NIC teaming here, and Virtualization MVP Didier Van Hoye just wrote a great post NIC teaming here so rather than re-post that content, I’ll direct you their way. They are quick and easy reads, and I recommend taking a look.
Microsoft also just released a 34-page whitepaper this past week which goes deep into the new feature, which you can find here.
In my early testing, especially on the Beta, I’ve absolutely loved the new feature, and it’s now part of our default build process. You can set it up a couple different ways, depending on what you’re trying to achieve (teaming the guest NICs and host NICs separately, teaming all your NICs together and sharing between the host and guests, et cetera).
There will be more to come on this soon, but for today, know that if you’ve avoided NIC teaming with Hyper-V to date due to the complexities of the 3rd Party implementations, take a fresh look at the new in-box LBFO feature. It may be just what you’re looking for!
Good Luck, and Happy Virtualizing!