Recipe 11.13 Distributing Load Evenly Between Several Servers
Problem
You want to serve the same content from several
servers and have hits distributed
evenly among the servers
Solution
Use DNS
round-robin to have requests distributed evenly, or at least fairly
evenly, among the servers:
www.example.com. 86400 IN A 192.168.10.2
www.example.com. 86400 IN A 192.168.10.3
www.example.com. 86400 IN A 192.168.10.4
www.example.com. 86400 IN A 192.168.10.5
www.example.com. 86400 IN A 192.168.10.6
www.example.com. 86400 IN A 192.168.10.7
Discussion
This example is an excerpt from a BIND zone file. The actual syntax
may vary, depending on the particular name server software you are
running.
By giving multiple addresses to the same hostname, you cause hits to
be evenly distributed among the various servers listed. The name
server, when asked for this particular name, will give out the
addresses listed in a round-robin fashion, causing requests to be
sent to one server after the other. The individual servers need be
configured only to answer requests from the specified name.
Running the host command on the name in question
will result in a list of possible answers, but each time you run the
command, you'll get a different answer first:
% host www.example.com
www.example.com has address 192.168.10.2
www.example.com has address 192.168.10.3
www.example.com has address 192.168.10.4
www.example.com has address 192.168.10.5
www.example.com has address 192.168.10.6
www.example.com has address 192.168.10.7
% host www.example.com
www.example.com has address 192.168.10.7
www.example.com has address 192.168.10.2
www.example.com has address 192.168.10.3
www.example.com has address 192.168.10.4
www.example.com has address 192.168.10.5
www.example.com has address 192.168.10.6
|
Make sure that when you update your DNS zone file, you also update
the serial number, and restart or reload your DNS server.
|
|
See Also
|