Home arrow Site Administration arrow Configuring Load-Balanced Clusters

Configuring Load-Balanced Clusters

In this conclusion to a two-part series on load-balanced clusters, you'll learn how to configure the load balancer and test the system. This article is excerpted from chapter seven of Linux System Administration, written by Tom Adelstein and Bill Lubanovic (O'Reilly, 2007; ISBN: 0596009526). Copyright © 2007 O'Reilly Media, Inc. All rights reserved. Used with permission from the publisher. Available from booksellers or direct from O'Reilly Media.

TABLE OF CONTENTS:
  1. Configuring Load-Balanced Clusters
  2. Testing the System
  3. Testing the System continued
  4. Adding HA to LB
By: O'Reilly Media
Rating: starstarstarstarstar / 1
May 08, 2008

print this article
SEARCH DEV SHED

TOOLS YOU CAN USE

advertisement

Configuring the Load Balancer

On lb, create the load balancer configuration file, /etc/ha.d/ldirectord.cf:

  checktimeout=10
  checkinterval=2
  autoreload=no
  logfile="local0"
  quiescent=no
  virtual=70.253.158.42:80

          real=70.253.158.41:80 gate
         
real=70.253.158.45:80 gate
         
service=http
         
request="director.html"
         
receive="I'm alive!"
         
scheduler=rr
          protocol=tcp
          checktype=negotiate

Ifquiescentisyes, a faulty realserver gets a weight of0but remains in the LVS routing table; we’ve set it tono, 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 of1and dead ones have a weight of0.

Ifchecktypeisnegotiate, the director will make an HTTP request to each of the realservers for the URLrequest, and see if its contents contain the string value forreceive. If the value ischeck, only a quick TCP check will be done, andrequestandreceivewill 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 deviceeth0:0:

  auto eth0:0
 
iface eth0:0 inet static
         
address 70.253.158.42
         
netmask 255.255.255.248
     
# These should have the same values as for eth0:
         
network ...
         
broadcast ...
         
gateway ...

Now, fire up this new IP address:

  # ifup eth0:0

Finally, start your engines on lb:

  # /etc/init.d/ldirectord start
  Starting ldirectord... success



 
 
>>> More Site Administration Articles          >>> More By O'Reilly Media
 

blog comments powered by Disqus
escort Bursa Bursa escort Antalya eskort
   

SITE ADMINISTRATION ARTICLES

- Coding: Not Just for Developers
- To Support or Not Support IE?
- Administration: Networking OSX and Win 7
- DotNetNuke Gets Social
- Integrating MailChimp with Joomla: Creating ...
- Integrating MailChimp with Joomla: List Mana...
- Integrating MailChimp with Joomla: Building ...
- Integrating MailChimp with Joomla
- More Top WordPress Plugins for Social Media
- Optimizing Security: SSH Public Key Authenti...
- Patches and Rejects in Software Configuratio...
- Configuring a CVS Server
- Managing Code and Teams for Cross-Platform S...
- Software Configuration Management
- Back Up a Joomla Site with Akeeba Backup

Developer Shed Affiliates

 


Dev Shed Tutorial Topics: