|Configuring mod_backhand is fairly straight forward. If you installed
mod_backhand by "patching" the Apache source tree as is recommended, then
you have a notable advantage over those who did not. The "patching" process
adds the directives into the default httpd.conf file and adds a test cgi-bin
script that should give you a basic feel for how things are working.|
Otherwise, you have to know about all the directive that mob_backhand
understands. Here is how it works (what you need for a basic configuration):
Let us set up an environment for this example (ours at CNDS):
We have 10 Intel Linux machines that we wish to place on our cluster.
The network is 18.104.22.168/24 (and ths the broadcast address is
22.214.171.124). The web servers IPs are 126.96.36.199 -> 188.8.131.52
sans 184.108.40.206. We like to install out backhand enable apache server
with the prefix /var/backhand.
LoadModule backhand_module libexec/mod_backhand.so
Add the following line before any other AddModule directive, but after
OK, now backhand is loaded into the system. Now we need to tell it how to
communicate with child httpd processes and other backhand enabled servers. Add:
# This directorty must be readable and writable by euid of apache (nobody)
# The mod_backhand-Arriba and the AF_UNIX domain files are stored in here.
# This would be the way to do ethernet broadcast
# MulticastStats 220.127.116.11:4445
# but we choose to use the following IP multicast address with a TTL of 1
# We want to accept resource information originating from any IP on our
OK, now it should be able to share information. We would like to be able to
see what the servers personal view of the world (cluster resources) is at any
given time, so let's enable the diagnostic handler:
Now, let us enable it for a single directory. The cgi-bin directory on our
servers has some really hefty web applications (that really drive the load up).
We want to have the cgi-bin requests automatically redirected to the server
with the lowest load. Due to the possibility of multiple servers contending
for the same resources, we want to have each server only consider a random
subset of the servers. Of course, we only want server we have heard from
lately. So, inside the <Directory> declaration for your cgi-bin
directory we add our Backhand directives.
Allow from all
Presto! Restart your server and try it out. We have included in the source
distribution a same CGI script (that will tell you where you connected to and
which site you were redirected to.
We have this site up as www.backhand.org.