Please sir, can I have some more? I see two strategies emerging: * Internal load balancing: let the servers negotiate between each other to determine which one should service the request. aka linux-ha, carp. But a pretty serious problem occurs if one or more of the servers fails in such a way that it thinks all the other servers are down and all the other servers think that it is down. I would rather not leave it up to the servers in the cluster to decide if they have failed or not.
* External load balancing: use a proxy or router to balance requests among a cadre of servers. aka F5, pf rdr rules, ipvs/lvs. But how do you make the load balancer highly available? A hardware load balancer will be more stable than any server, but it can still fail. ipvs/lvs hasn't been updated since 2004 (the FreeBSD port was last updated in 2005). While that might indicate a mature project, I'm skeptical; especially given the amount of work that has gone into other networking projects since then. linux-ha/heartbeat looks interesting, but sounds like it could be very suceptabe to the situation where more than one server thinks that it should be the only server. I can build a pretty simple, and moderatly robust, load balancer using carp, pf, and router-side scrips which should do nearly the same thing as a layer-7 router. This seems like my best option at the moment. (It doesn't *have* to be open source, but my CFO would appreciate it.) Unfortunatly pf, as near as I can tell, doesn't do weighted redirection and would require scripts, and associated load, to manage the IPs in the cluster. -- Perfection is just a word I use occasionally with mustard. --Atom Powers--
_______________________________________________ Tech mailing list Tech@lopsa.org http://lopsa.org/cgi-bin/mailman/listinfo/tech This list provided by the League of Professional System Administrators http://lopsa.org/