Load balancing a single site with multiple servers

Hey guys,

I currently have a couple of servers in my rack at home, both of which run AD for my domain. 

The primary is a Core 2 Quad with 8GB ram,

The backup is a AMD Athlon X2 with 4GB ram. 


The primary server also runs MySQL, PHP, Windows Deployment Services and IIS, aswell as a VPN server.


On the primary i'm running a forum (PHPBB board) and i'm wondering how i would go about load balancing this single site between both of the servers? (as to basically round robin the requests from the WAN).

My main confusion with going about this is maintaining consistancy between both servers in real time, and allowing for failover incase one server did go down, that the site would still be up.

Any tips would be great (and feel free to rant on about various other scenario's etc, i like learning!)



You would need to put a LB (Load Balancer) infront of the two servers and give it an IP/Name which all network traffic is directed to. The first question is what LB to use, well there are hardware and software. Next configure the LB via its web console / settings. As part of this configuration you can set rules i.e when server one does not ping reply divert traffic to server 2 and keep checking server 1 every 1 min then direct back OR with a plugin to the server OS/NIC/App real time feedback like when CPU @ 75% divert traffic to server 2.

What you also need to support this is a seperate DB box so MySQL on a seperate server taht both can pull from this would in turn need to be backuped either real time which is call HA (high avalitibly) or a standard backup daily etc.


This is a super simple overview but might help

Do you mean you're running those on windows server, with a xampp install (php/apache/mysql) and IIS to make phpbb work, or are you running those on linux?

I don't think there is a useful solution for load balancing certain tasks over those two machines on windows. I don't think there will be a huge benefit using some kind of mpi mechanism on linux either for running phpbb to be honest, it's not a load you can just throw two more cores at on a separate machine that shares the same WAN connection, I think it will hardly make a difference, and you won't get redundancy with a load distribution setup with only two machines, although you can set two task servers, and if one goes down, the other will do the load distribution, but that implies that both doe the same job, and in a setup where there is nothing to distribute when one goes down because there are only two machines, I don't see the use to be honest.

Could convert them to VM with the free ESX P2V software and host on the free ESX this way you can do snap shots and a whole lot more.

(sorry my first reply was based around LB's which not sure you really meant)

It was more consideration than practical application.

I already have a load balancer to speak (my router is a PFSense box with multi-wans and lans), I just wondered if there was a 'traditional' way of maintaining an even database, the single SQL box and use mutliple web hosts solution seems to be the most appopriate way to do things.

Thanks though :)