Posted by: Anonymous Coward
on April 24, 2006 10:39 PM
This article had the chance to talk about true clustering, but unfortunately blew it big time:
* Round-robin DNS is a very crude way of trying to send requests to two or more servers - DNS caching by upstream servers (regardless of TTL values) and no accounting for the load of each machine makes it too coarse a method for "load balancing".
* There should be no concept of a "master server" (or if there is, it should dynamically move automatically to another box if the current box assigned to be a master dies).
* You need to share the filestore across all servers in the pool for both read and write access (along with locking and re-synchronisation if a server goes down and comes back up again). One-way rsync'ing just doesn't cut it.
To balance Web serving and share filestore, I used this software:
* Spread * Wackamole * 2-way rsyncing (with my own custom 2-way locking and filestore change detection)
It was working OK until I realised that Wackamole logs on the original Web host that was requested *and* on the redirected Web host (if that other host was more lightly loaded), doubling the Web logging up a lot of the time. I ended up skewing the load balancing to favour one server over another unless the load was high which mostly avoided the double-logging.
I'd like to see a comprehensive article on LAMP clustering that covers properly sharing filestore (without using one-way rsync or NFS, both of which have single points of failure), Web load-balancing and, of course, database clustering. I'd also ideally like to see Linux distros start to include such software to make it easier to set up a LAMP cluster in the first place.
Not a true cluster
Posted by: Anonymous Coward on April 24, 2006 10:39 PM* Round-robin DNS is a very crude way of trying to send requests to two or more servers - DNS caching by upstream servers (regardless of TTL values) and no accounting for the load of each machine makes it too coarse a method for "load balancing".
* There should be no concept of a "master server" (or if there is, it should dynamically move automatically to another box if the current box assigned to be a master dies).
* You need to share the filestore across all servers in the pool for both read and write access (along with locking and re-synchronisation if a server goes down and comes back up again). One-way rsync'ing just doesn't cut it.
To balance Web serving and share filestore, I used this software:
* Spread
* Wackamole
* 2-way rsyncing (with my own custom 2-way locking and filestore change detection)
It was working OK until I realised that Wackamole logs on the original Web host that was requested *and* on the redirected Web host (if that other host was more lightly loaded), doubling the Web logging up a lot of the time. I ended up skewing the load balancing to favour one server over another unless the load was high which mostly avoided the double-logging.
I'd like to see a comprehensive article on LAMP clustering that covers properly sharing filestore (without using one-way rsync or NFS, both of which have single points of failure), Web load-balancing and, of course, database clustering. I'd also ideally like to see Linux distros start to include such software to make it easier to set up a LAMP cluster in the first place.
#