My original article on Hyper-V’s issues with NIC teaming has gotten a fair amount of attention.
First Keith Ward over at Virtualization Review blogged about this issue. In his initial post, Keith basically pointed out the issue and then asked the readers for feedback: is this really as big of an issue as it seemed? The readers who responded were split; one blasted Hyper-V and the other wasn’t too concerned.
Keith followed that up with another post in which he provides a response from Microsoft regarding this issue:
NIC Teaming is a capability provided by our hardware partners such Intel and Broadcom. Microsoft supports our partners who provide this capability. This is true whether the customer is running Windows, Exchange, SQL, Hyper-V, etc. We’ll have a detailed KB article about this coming out soon.
Keith’s second article was then also picked up by DABCC.
While Microsoft is sticking to the “this is a device driver issue” mantra, I’m not so sure I agree. I can see their position to a point. In Keith’s second post, analyst Chris Wolf brings up storage drivers. This is similar in that Microsoft relies upon the storage vendors to provide device-specific modules (DSMs) that provide the multipathing functionality. So, like with the NIC teaming, Microsoft is pushing the functionality back to the device drivers and vendors who write them.
But that’s as far as this comparison can be taken. Microsoft officially supports storage multipathing; they don’t officially support NIC teaming. (See this KB article or this KB article.) In addition, Microsoft provides an official framework in which the storage vendors can operate: the MPIO framework. There is no such framework for network redundancy. In fact, if such a framework existed then much of the dissatisfaction with Microsoft over this issue would be alleviated, in my opinion.
Instead, there is no framework to provide official NIC redundancy for any Microsoft product running on Windows Server, and Windows itself doesn’t provide that functionality. Users are forced to adopt unsupported means to provide NIC redundancy. Why shouldn’t they be upset?
By the way, since publishing the first article I’ve been contacted by one of the presenters of the VIR358 session during this which issue came to light, but he has not yet been able to provide any additional information. As soon as more information is available, I’ll be sure to let everyone know here.
Tags: HyperV, Microsoft, Networking, Virtualization, Windows
-
First, I’m glad Scott is bringing light to this issue. It needs crystal clarification and Microsoft needs to pump out a recommended strategy. Clustering and Live Migration is not a replacement.
I really hope this article is not just Hyper-V bashing for the sake of it and truly helps us find a great low-cost virtualization solution.
A couple notes:
The KB articles are about Virtual Server not Hyper-V.
I’ve used Etherchannel (NIC bandwidth load-balancing and fault-tolerance) for many years. Intel, Broadcom, Cisco etc… are the experts in this arena not Microsoft or VMware.
Historically, Broadcom does allow you to combine several vendors in 1 team but I prefer keeping 1 vendor in a team. Mixing NIC drivers is too much of a negativve to outweigh the positive.
-
“Get what you pay for” comments is the reason VMWARE charges the rediculous sums they do.
They also see that Application Virtualization is really going to crash the party.
Is it your feeling that current Etherchannel is not an acceptable solution in general or just specifically Hypervisors?
-
Good points, Scott. Sorry for jumping in late, but I was at a conference all of last week, so I’m finally getting caught up on news, etc. My point to Keith Ward was basically that we’ve gotten by without official support for so long, that we’re almost used to it. I’d never deploy a Microsoft cluster without teamed NICs (even though such a config wasn’t supported by MS), and MS and the organization would typically look right past the NIC teaming support issue. That all being said, your points are right on. Multipath is officially supported and NIC teaming should be as well.
-
I just designed and deployed a clustered Hyper-V system that has Intel NIC Teams no problem. It’s in production and running 12 VM in on the cluster…
-
This is a late comment to this post, but I just got around to playing with NIC teaming on one of my IBM x series servers. The server has broadcom NICs, and what I found was using the BACS software I could use the smart load balancing for making a failover team that would work just fine with hyper-v. When I flipped it to being an active-active team things hit the wall. Smart load balancing wasn’t the only option though, you can also do an 802.3ad team (etherchannel). After some searching I found a Microsoft presentation that actually suggests using 802.3ad to load balance NICs for hyper-v. Going the etherchannel route means you are using a standards based well supported framework to run your team on. Now that Cisco had released VSS which lets you build an etherchannel across multiple 6500s (you could do it before on stacked 3750s) I don’t see why you wouldn’t use it. Its a more stable method than mac-out methods, and should result in better load balancing.
Also, just because Microsoft isn’t the one who supports something doesn’t mean it is “unsupported.” That’s just a marketing scare tactic from vmware.
-
I suppose my thought is that if we are talking about ‘enterprise-grade’ virtualization customers they are also likely ‘enterprise-grade’ networking customers. I’m not sure if other netorking vendors already offer solutions to etherchannel with multiple switches, but if they don’t I’d assume they’ll follo suit soon. I know Juniper has something they call “virtual chassis” for stacking that I’d assume could lead to the same end goal. To me an etherchannel solution is more ‘enterprise’ than a mac-out solution. My guess is Microsoft will probably implement something within hyper-v at some point to do NIC bonding for SMB folks using budget switches, but my point is that there is a solution now. Additionally even if Microsoft implements something similar to what vmware has done it may still be beneficial to opt for etherchannel in an enterprise scenario if you can for better load balancing.
Again my beef is with saying ‘unsupported’ in the first place. It’s an incorrect statement. The NIC vendor supports thier software, therefore it is supported. Microsoft states the use of third party NIC teaming is ‘accepted’ just that the support of that third party software falls to the NIC vendor. It’s not like Microsoft is saying “don’t do it”. Yes Microsoft says that if you are having an issue they may ask you to disable the team as part of the troubleshooting process. That’s not a big surprise. Even if the teaming software was provided by Microsoft I’m sure there are scenarios where they would ask you to disable it in troubleshooting to verify if it is the issue. Heck, I’m sure that vmware does the same with their teaming solution. To me the ‘unsupported’ thing is FUD.
-
Nat: So you got Teaming to work with the IBM x series and Hyper-V? Would love some more info on that.
I’m trying to get HS12 in a BladeCenter S to work with hyper-v in a clustered 2008 2 node system.
My VM’s can only ping the IP of the Hyper V. Can’t route past it.
I’m going to try messing with the 802.3ad setup and see if that helps.
Sean~
-
Sean,
We are ewxperiencing the same issue only we are using IBM HS21 blades in a BladeCentre H. We have SLB setup on our Broadcom NIC’s however are somewhat tied to the SLB technology because our NIC’s are across different physical switches in the back of the BladCentre-H Chassis. I don’t believe we can use 802.3ad across multiple switches???
Did you have any luck?
Ian
-
Further to Ian’s message, does anyone have hands on experience they can share with a BladeCentre H, HS21’s or HS22’s and load balancing. I’ll be implementing a similar system in the coming months and are unsure of any potential issues. Specifically, I’ll have the two blade NICs and two NICs on the expansion card (NIC types the same). There will be a number of Hyper-V blades clustered.
If anyone can share first hand experience it would be much appreciated. Cheers
Dan
-
Installation order should be as follows:
1. Add the Hyper-V role
2. Install the NIC Teaming software
3. Configure the team
4. Configure virtual networking within Hyper-V




18 comments
Comments feed for this article
Trackback link: http://blog.scottlowe.org/2008/06/23/more-on-hyper-v-and-nic-teaming/trackback/