Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Everything I find is for WAN load balancing. Our customer wants to have a setup where two servers are connected to the same router. To the outside network devices connected to the router, they think they are talking to the server directly. The idea is if one server goes down, then it fails over to the other server. The servers also need to have internet access through the same router, so the router is the gateway. The traffic from the network devices external to the router would need to be forwarded to a certain port on the servers. Each server would have a different IP address of course, but both communicate on port 1024 to the network devices.

Does a LAN load balancing router exist that can do this?

share|improve this question
    
Is there a reason that load balancing can't be implemented in software? What OS are the servers? –  BigHomie Mar 13 '13 at 14:00
    
@MDMoore313: Both run Windows 7. This is for if they are completely OFF or the network card simply stops working. Not sure how software could help this. I could put a PC between the other PCs if that is what you are implying to do the load balancing –  Brian Mar 13 '13 at 14:03

4 Answers 4

up vote 1 down vote accepted

Well, load balancing and 'failover capability' are two different things. The Windows Server OSes have failover cluster capability, which is what you should use. The following is taken from here:

A failover cluster is a group of independent computers that work together to increase the
availability and scalability of clustered roles (formerly called clustered applications and 
services). The clustered servers (called nodes) are connected by physical cables and by software. 
If one or more of the cluster nodes fail, other nodes begin to provide service (a process known as failover). 
In addition, the clustered roles are proactively monitored to verify that they are working properly. If they are not working, 
they are restarted or moved to another node. 

Update

For custom software, I would recommend using at least two HyperV nodes in a failover cluster. Each one can have a virtual machine tied to the cluster that has your software installed. Without recoding the app, if the primary vm goes down, and can't be reached by the other(s), the other node will take over. See this example.

share|improve this answer
    
is failover clustering in Windows only for Web? I am dealing with raw TCP/IP sockets. No real protocol. –  Brian Mar 13 '13 at 14:14
    
@0A0D what service are you providing? is this a custom piece of software? –  BigHomie Mar 13 '13 at 14:16
    
Yes, custom software –  Brian Mar 13 '13 at 14:18
    
@0A0D I've updated the answer. –  BigHomie Mar 13 '13 at 14:27

It’s not clear from your wording what software or what approaches you have made to dealing with this but when you say, “Everything I find is for WAN load balancing,” that is part of the problem.

There is no such thing as WAN specific or LAN specific load balancing. It’s all dependent on configuration & options. I recommend a software load balancer such as Apache running mod_proxy running on some flavor of Linux like Ubuntu. So if I were to recommend a way of handling this, I would suggest the following.

  1. Your customer has two servers behind a router, right? Let’s say their IP addresses are 10.10.10.1 & 10.10.10.2. Okay, now you need to add a 3rd server which will be the load balancer & let's give that machine the IP address of 10.10.10.0. Configure it as it should with 10.10.10.0 load balancing to 10.10.10.1 & 10.10.10.2.
  2. Make sure the load balancer has an external IP address on the router that will direct outside world traffic to 10.10.10.0. Let’s say that external IP address is 99.12.34.0.
  3. Now when someone connects to that external IP address, the router will know to route all traffic from 99.12.34.0 to 10.10.10.0. And then 10.10.10.0 will route to 10.10.10.1 & 10.10.10.2 depending on need.

That should solve the issue.

But if you are looking for a hardware solution, it might be the same basic architecture but with that hardware router being the replacement for the Apache server running mod_proxy. In my mind that is six of one, 1/2 a dozen of another. Your choice.

But in general network architecture of a WAN versus a LAN should not be a factor.

share|improve this answer
    
please excuse my stupidity, but I'll give you an example of hardware solutions.. "WAN Load balancing" : amazon.com/Duolinks-SW24-2PORT-Balancing-Router/dp/B0012ZQ0GA In this case, are the terms interchangeable? –  Brian Mar 13 '13 at 14:27
    
That is not the kind of load balancer you are describing. All that does is aggregate bandwidth from two different connection from the WAN to the a LAN. Perhaps it could be configured for LAN use, but I have no idea what embedded software there is on that. In my experience, for the type of load balancing you are describing, a Linux box running Apache with mod_proxy is the best solution. –  JakeGould Mar 13 '13 at 14:49
    
Ok, does mod_proxy work with raw TCP/IP sockets? Alot of the solutions involve HTTP traffic and that's not what I have. –  Brian Mar 13 '13 at 14:50
    
You need to redefine your question since its clearly too vague. Hopefully someone else can help. –  JakeGould Mar 13 '13 at 15:22

Your client is asking for server load balancing, and there are a number of hardware and software solutions to implement that behavior, if you use those words in a search, the options are numerous.

share|improve this answer

You can forward traffic from your router to a load balancer virtual IP (VIP) and the LB will balance the load on your internal servers.

[Router]

192.168.1.10 
     |
[Load Balancer] (Kemp, F5, cisco, or zen load balancer)
   |      |
[Srv1] [Srv2]
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.