load balancing...

Kevin Darcy kcd at daimlerchrysler.com
Mon Sep 18 23:06:22 UTC 2000


Joseph S D Yao wrote:

> On Mon, Sep 18, 2000 at 02:50:20PM -0700, arvind rao wrote:
> >   I need to setup one domain-name for 2 IP addresses
> > such that if one of the machines are not up, it should
> > automatically pick the other one.
> >   What I saw with having just 2 "A" record entries in
> > the named.domain-name/IPnetwork file was that if I try
> > to ping the "domain-name", it randomly picks one of
> > the 2 IP'S and if it picks the IP address of the
> > machine which is down, then it just doesnt
> > automatically try the other machine. How do I set it
> > up so that it identifies the other machine if one
> > machine is down.
> >   Is there a way to set priority level????
>
> It can't be done with just DNS and BIND.

Hmm... Perhaps that's a little too absolute. SRV can do what the poster
wants, once web clients start using it. And even today, switching an
A record automatically in case of failure, or giving out both addresses in
"fixed" order on all of the authoritative servers, can at least provide
*some* degree of automatic failover capability, although perhaps only at
the expense of making the records very volatile and, in the case of the
"fixed order" solution, requiring a certain amount of failover smarts in
the client and dealing with the inevitable "spillover" traffic to the
backup server (which can possibly be handled with a web redirect or
whatever). There aren't any *good* DNS-only solutions today, but there are
halfway solutions. At least until SRV gets fully specified and deployed.

> There are some commercial
> products that will do this, however.

Indeed. But they tend to be rather expensive. Moreover, most if not all of
them make the A records they manage very volatile, which is one of the
biggest drawbacks of DNS-based failover, so how is this much better than
just scripting your own failover mechanism? I can't imagine that it would
be that hard to write a script which senses whether the main webserver is
down and, if it is, pokes DNS with a new A record, or deletes the main
webserver's A record from a multi-valued  RRset, via Dynamic Update, and,
optionally, tells the backup webserver to turn off its redirect.

Dynamic Load Balancing, on the other hand, can get a lot more complicated.
I can see legitimate reasons for shelling out significant sums of cash for
a box that does that task well.


- Kevin





More information about the bind-users mailing list