Let me just get this out of the way: I am not a big fan of Windows NLB (Network Load Balancing) clusters. They are not inteligent in the sense that they cannot tell when a node is not serving up a page properly, or a web application pool crashed for example. Sometimes when you have a faulty load-balanced web server, you get to hear strange complaints from users: I see the page, and then I refresh and it’s gone…oh wait, it’s back up again. NLB will simply round robin user requests across the configured nodes, hence the on-off behavior that users see. Hardware load balancers can probe the web server on certain port, enable sticky sessions, employ complex load sharing algorithms, offload SSL sessions and all kinds of cool stuff. They also cost $$$.
That being said……
NLB is free, it’s simply a feature that can be added to Windows Server 2008, so you can’t beat that price.
Second, it is extremely easy to configure, just follow the wizard. Once installed, access the applet from Administrative Tools > Network Load Balancing
Couple of things to remember:
1. add the load balanced IP address as secondary IP on the server NIC, otherwise the cluster will complain
2. make sure you create your DNS records for the URL(s) you are trying to server
3. if you are using SSL, make sure all load-balanced nodes have the certificate installed in IIS and bound correctly.
After that it’s just a matter of adding additional nodes to the NLB cluster by simply following the prompts.
It is not ideal solution since it is software based and lacks advanced capabilities. However, it’s always better to have some kind of load balancing solution, than none at all. So if your company hasn’t invested in fancier hardware-based load balancers, then NLB beats simple DNS round-robins.