• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 309
  • Last Modified:

Can you do Content-Based load balancing with NLB ?

Hi there,

Looking for some guidance with NLB.  I've never used it before but I have used other load balancers like Netegrity's Central Dispatch.  

We will have a 2-node Win 2003 cluster using IIS for the websites.  We will have video files that need to be served off of only 1 of the machines for various reasons.

With Netegrity's Central Dispatch, you can set up load balancing rules that state "If the file being requested is of this type, send the request to this machine."  I believe they call it "Content-Based" load balancing.

Can NLB be made to do this same type of routing ?  If so, how ?

Thanks,

John
0
trzesniakj
Asked:
trzesniakj
  • 2
  • 2
1 Solution
 
oBdACommented:
No, that can't be done with NLB; NLB provides, as the name says, network load balancing, not some sort of "content load balancing" or content scanning. It simply directs network packets to one of the cluster members, but it doesn't answer any web requests.
But nothing keeps you from referencing a dedicated machine for the file download, or from adding a port rule to handle traffic on a specific port on a dedicated machine.
0
 
trzesniakjAuthor Commented:
OK.  Great info.  Thanks !

I'm going to talk more to our network guys about this.  But can you give me an example of how you would set up a port rule or how, in a cluster, you could reference a specific machine in the link for the file ?

Thanks,

John
0
 
oBdACommented:
One possibility, if these are just regular downloads, is to simply change your website and adjust the download's target address to the dedicated server's absolute address (assuming you're usually using relative links).
In case you want to have the option to have failover to the other machine in case your "video server" goes down, but usually have only one machine handle the video traffic, you can use a port rule.
Add another web for your video stuff on both machines, let's call it VideoWeb; let it listen on a different port than 80, for example 81.
In NLB Manager, right-click your NLB cluster, choose "cluster properties", go to the "port rules" tab. If you've created the NLB cluster with the NLB Administrator, it will already have created a default rule for the NLB cluster for the ports from 0 to 65535 and all cluster IP addresses, to distribute the load evenly. Edit that rule, so that it now handles the ports 0 to 80, and add two more like the one: one for ports 82 to 65535, one for port 81.
Now right-click the cluster member that should handle the video traffic by default, choose "host properties", go to the "port rules" tab. Edit the "82" rule, and set the load weight to 100. Do the same for the other host, but set the load weight to 1.
This should now keep the VideoWeb traffic on the video host by default, the other host should only take over if the video server goes down. If you don't want the other host handling this traffic at all, set the load weight to 0. During a catastrophe, you'd still be able to readjust this quickly.
Instead of using another port, you could as well add another IP address to the cluster addresses, and assign the rule to the IP address. In this case, you'll have to change (and maybe multiply) the default rule, so that it will apply to the normal cluster address (and other cluster IP addresses you might have added).
If you want to test this, but don't have the hardware for this, you can create a test environment using Virtual Server (you should get NLB to work with Virtual PC as well, but I haven't tried that yet). A machine with 1GB of RAM and W2k3 should easily handle your two test servers.

Microsoft Virtual Server 2005
http://www.microsoft.com/windowsserversystem/virtualserver/default.mspx

Microsoft Virtual PC 2004
http://www.microsoft.com/windows/virtualpc/default.mspx
0
 
trzesniakjAuthor Commented:
Wow !  Couldn't ask for a better explanation.  Thanks for all the help !

John
0

Featured Post

Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now