Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

Load Balancing IIS on Windows 2003 Server

Posted on 2004-10-15
15
297 Views
Last Modified: 2007-12-19
I have never done IIS load balancing before and would like to know how to get into setting this up using 2 x Windows 2003 servers.

Do I need special switch hardware or does the OS do everything itself? I have read something in a "Technical Overview of Clustering in Windows 2003 Server" doc from Microsoft - they write somehting about IGMP support that will do that only traffic for the NLB cluster is sent tot those servers and not all other servers in the same switch. Is this correct and should I be aware of somthing here?

How can I get startet here? I look forward hearing from anyone that has successfully done Windows 2003 Server NLB in real-life.
0
Comment
Question by:Jakob Adeltoft
  • 7
  • 6
15 Comments
 
LVL 34

Accepted Solution

by:
Dave_Dietz earned 500 total points
ID: 12322801
OS does everything itself.

I would suggest plugging the Load Balanced NICs on the machines into a hub and them go from the hub to the switch.  This can avoid some issues with certain switches.

In any case, all you have to do is enable and configure Network Load balancing on both machines.

Please see the following articles for assistance in configuring NLB:

http://support.microsoft.com/default.aspx?scid=kb;en-us;323431
http://support.microsoft.com/default.aspx?scid=kb;en-us;323437

Dave Dietz
0
 

Author Comment

by:Jakob Adeltoft
ID: 12348608
Thanks for the info. Should it be a hub and not a switch? Or does it matter?

Should the 2 servers be configured with the same IP address, or do they need to different IP addresses? In case of different IP adresses, how will www.domain.com know what server to contact? I could make a round-robin DNS, but then the NLB isn't of much use...

0
 
LVL 34

Expert Comment

by:Dave_Dietz
ID: 12349551
Hub will generally work better but a switch should also work.

They should have the same IP address.  :-)

Dave Dietz
0
Back Up Your Microsoft Windows Server®

Back up all your Microsoft Windows Server – on-premises, in remote locations, in private and hybrid clouds. Your entire Windows Server will be backed up in one easy step with patented, block-level disk imaging. We achieve RTOs (recovery time objectives) as low as 15 seconds.

 

Author Comment

by:Jakob Adeltoft
ID: 12349883
A hub is best in NLB setup, right? But else we can agree that a switch is much better in assigning packages to each machine, right? A hub will send packages to all ports, even if itøs only intented for one machine...
0
 
LVL 34

Expert Comment

by:Dave_Dietz
ID: 12351073
You are correct.  In most cases a switch is actually preferable.

With load balancing there are some switches that get confused by having two (or more) ports with different MAC addresses showing the same IP address and can end up disabling one (or more) of the ports and rout all the traffic to only one machine.

Hubs happily forward packets to all downstream connections without question.

Dave Dietz
0
 

Author Comment

by:Jakob Adeltoft
ID: 12369054
Ok, then I'll find a hub to do the work :-)

I'm also running FTP application (not MS) on these 2003 servers. Can NLB also be done so uploads are distributed between the 2 servers or is this another solution approach? I'm using Serv-U.
0
 
LVL 34

Expert Comment

by:Dave_Dietz
ID: 12369243
As long as you have Single or Class C affinity configured FTP should do fine in a Load Balanced scenario.  :-)

Dave Dietz
0
 

Author Comment

by:Jakob Adeltoft
ID: 12369288
Can you explain that in English? I don't have a clue about what Single or Class C affinity are?
0
 
LVL 34

Expert Comment

by:Dave_Dietz
ID: 12369419
In the NLB properties in Port Rules Affinity is a property set to None, Single or Class C.

None - each request from a client on the same port is directed to the same server
  - A session for port 80 will always go to the same machine, but a new request to port 21 may go to a different server
Single - Each request from a given client to the same server
  - All sessions from this client will go to the same machine
Class C - Each request from a machine in the given Class C Subnet will go to the same machine
  - Same as single but for a Class C range instead of a single IP, usefule for clients behind proxy arrays where their proxy's IP may change

Dave Dietz
0
 

Author Comment

by:Jakob Adeltoft
ID: 12373221
Concerning "none" - How do the NLB know what users are the same? By IP, Mac address (not over Internet?), IIS Session (we don't use these)?

Why can't FTP work in "none" mode? I don't care if one upload is for server #1 and the seond upload is for server #2 as the uploaded files are stored the same place anyways...

With every solution (none, single, class c) the user are always stuck on the same server in one or another way - but what if the server does not respond - then I assume that all requests will aut. be redirected to another server, and the user will not experience anything?
0
 

Author Comment

by:Jakob Adeltoft
ID: 12544374
Hi Dave,
Have you had a chance to review my additional questions regarding to the Port Rules Affinity for NLB, that I did not understand?
0
 
LVL 34

Expert Comment

by:Dave_Dietz
ID: 12548075
Sorry, been busy.....

All affinity is based on IP addresses and Port numbers. I'll rephrase what I had above:

None - each request from a unique IP address on the same port is directed to the same server
  - A session for port 80 will always go to the same machine, but a new request to port 21 may go to a different server
Single - Each request from a unique IP addresses regardless of Port is sent to the same server
  - All sessions from this client will go to the same machine
Class C - Each request from an IP address in a given Class C Subnet regardless of port will go to the same machine
  - Same as single but for a Class C range instead of a single IP, useful for clients behind proxy arrays where their proxy's IP may change

The reason FTP won't work with none is that FTP depends on port 20 as the command channel and 21 (Active) or a port above 1024 (passive) as the data channel.  With None affinity these ports might end up on different servers which would fail.  You would have to use either Single or Class C to make sure that both ports used for FTP are assigned to the same server.

You are essentially correct on the third point.  You users might see a disruption if they are actively performing some sort of data transfer at the time of failure but their next request would be directed to a different server.

Dave Dietz
0
 

Author Comment

by:Jakob Adeltoft
ID: 12548687
This means that no matter what affinity I'm using, I'll have ALL users from same IP address on the same server? I deal with several large customers that uses our webbased system running on IIS. They are between 100-500 users behind the same IP address - they will all go to the same server, right? Then Windows 2003 NLB isn't of much use...Is this correctly understood?
0
 
LVL 15

Expert Comment

by:harleyjd
ID: 14059639
Sorry for the ping guys - this is a bit over my head. I *think* the original question is answered, but I'd like to be sure...

Please let me know what you think...
0

Featured Post

Netscaler Common Configuration How To guides

If you use NetScaler you will want to see these guides. The NetScaler How To Guides show administrators how to get NetScaler up and configured by providing instructions for common scenarios and some not so common ones.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I've always wanted to allow a user to have a printer no matter where they login. The steps below will show you how to achieve just that. In this Article I'll show how to deploy printers automatically with group policy and then using security fil…
Restoring deleted objects in Active Directory has been a standard feature in Active Directory for many years, yet some admins may not know what is available.
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

808 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question