Jason Jones
Posts: 2265
Joined: 30.Jul.2002
From: United Kingdom
Status: offline
|
quote:
ORIGINAL: mascalia Thanks, Jason. I think you're right. I found a couple of other supporting articles, too. While there seems to be a lot of interest out in GoogleSpace about using alternate NIC's to pass the heartbeat traffic, the general consensus (such as it is) is that NLB heartbeat traffic passes between the NLB NICs themselves. Which, in an offhand way, makes sense. If you have three servers in an array, assume they each have two NIC's in different Networks. One Network is external, customer-facing and the other is a back-end connection to the corpnet with DC's, DNS, etc.... Further assume that there is a NLB array across the external NICs on the three servers. Reading the documentation out there, the "heartbeat" is sent to all servers in the array once every second. If an acceptable reply is not received, convergance begins to remove the unresponsive array member. From a "NLB for Dummies" perspective, wouldn't it make sense that that traffic would HAVE to go out over the NLB NICs? Those are the NICS used to create the array. What good would it do to have your NLB heartbeat going out over NICs that aren't in the array? The idea the heartbeat is to see if a specific NLB host (and NIC) is responsive. I my simplistic mind, that would be most effective going from NIC to NIC across the NLB array. Now, I also found a bunch of sites claiming to have custom configs that will supposedly force the NLB heartbeat to go out over a different NIC. But, even if it works, is it wise? What about the case (common in ISA arrays) where you may have three or more NIC's in a box, and maybe have NLB built across two of them? If the NLB heartbeat goes out the NLB "back-end" of the servers, what happens if only one of the NLB configs goes belly up on a server, but the other one is working fine? My guess is that NLB would be killed for the entire server, essentially taking it out of every NLB array - even if it's not necessary. If the NLB heartbeat for a specific array goes out over the NLB NICs for that array, however, then failure of NLB on one array wouldn't necessarily cause the server in question to withdraw from all NLB arrays (assuming that ISA server is smart enough to act that way ). Just my thoughts after a good night's sleep. Overall, I guess you could force heartbeats out over another interface (and for MSCS, you actually want to do this). But for WLBS/NLB, do you want to? From what little I've been able to find, my current answer is NO. What do you think? Mike At this rate, I think we will need our own dedicated forum Forcing the heartbeats down the intra-array NIC sounds like a bad idea to me and very likely to be unsupported by MS for ISA w/ integrated NLB. By default/design, if any one of the NLB enabled NICs fails in an array member, the entire array member is removed from the cluster - this is done forcibly by stopping the firewall service on that particular node. If you think about it, this is actually the only sensible option as ISA cannot tell which NIC is important or not and it would completely break bi-directional affinity as packets may 'come in' on a good NIC but need to 'go out' on a failed NIC. Is this the right option? Not sure, but I think it seems the most cautious and sensible option if you think about it... Hence why it is so important to ensure you have HA across the entire platform e.g. multiple switches and each ISA should only ever be conencted to a single switch to avoid a single point of failure affecting all array members at the same time. It would be nice to flag an ISA Network as a critical interface and then only get ISA to fail the node if an NLB enabled interface, which was defined as critical, failed. In the scenario, you could maybe suffer loss of a perimeter network interface without failing the entire node, but not so for the internal interface. I am pretty confident that heartbeats occur on the NLB enabled network themselves too. Hence as the intra-array is not NLB enabled, no hearbeat traffic will ever be seen on these interfaces. However, you will see port 8080 intra array traffic between the nodes, but this is ISA and not NLB. Cheers JJ
< Message edited by Jason Jones -- 28.Oct.2008 10:43:36 AM >
_____________________________
Jason Jones (MVP) Silversands Limited http://www.silversands.co.uk My Blog: http://blog.msfirewall.org.uk/ Get our NEW ISA 2006 Book!: http://tinyurl.com/2gpoo8
|