
Load Balancing and High Availability
|
159
scheduler=rr
protocol=tcp
checktype=negotiate
If quiescent is yes, a faulty realserver gets a weight of 0 but remains in the LVS rout-
ing table; we’ve set it to
no, so dead servers will be removed from the pool. The
weight of a server reflects its capacity relative to the other servers. For a simple LB
scheme like ours, all live servers have a weight of
1 and dead ones have a weight of 0.
If
checktype is negotiate, the director will make an HTTP request to each of the
realservers for the URL request, and see if its contents contain the string value for
receive. If the value is check, only a quick TCP check will be done, and request and
receive will be ignored.
The system startup files in /etc for ldirectord should have already been created during
the installation. Ultra Monkey also installed Heartbeat, which we aren’t using yet, so
let’s disable it for now:
# update-rc.d heartbeat remove
update-rc.d: /etc/init.d/heartbeat exists during rc.d purge (use -f to force)
The load balancer monitors the health of the web servers by regularly requesting the
file we specified in ldirectord.cf (
request="director.html").
Since this server will be responding to web requests at the VIP address (70.253.158.42),
we’d better tell the server about it. Edit /etc/network/interfaces and add these lines to
create the alias device
eth0:0:
auto eth0:0
iface eth0:0 inet static
address ...