LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

[ANNOUNCE] Keepalived-1.2.0rc1 (with THC patch)

To: "LinuxVirtualServer.org users mailing list." <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: [ANNOUNCE] Keepalived-1.2.0rc1 (with THC patch)
From: Jacob Rief <jacob.rief@xxxxxxxxxxxx>
Date: Thu, 12 Feb 2004 12:00:18 +0100
            Threaded health check support for keepalived

In order to avoid some problems caused by the current keepalived design,
I added a patch named Threaded Health Check support "THC" to keepalived.
THC will help to make it much easier to write monitor modules for
keepalived, because the author of such modules does not have to worry
about the cooperative scheduling, currently used in keepalived. Instead
one POSIX-thread is created for each query defined in the
keepalived-configuration-file. Each such pthread handles its own
main-loop and the scheduling is preemtive, now scheduled by the kernel,
rather then by the application, avoiding some I/O blocking problems in
keepalived.

The main advandages for using THC:
- Write your own pluggable monitors modules for keepalived which then
  are loadable as dynamic shared objects. Writing such modules now is
  very easy.
- Use external libraries for writing such modules, even without support
  for asynchronous calls.
- Avoid I/O blocking in certain situations, were the scheduler of the
  keepalived-checker did block in certain system calls, namely read().
- Seperate the real-server-checking from the virtual-server-switching.
  This allows you to use one real-server-query to switch more than one
  virtual-server.
  If, for instance your httpd-server runs on more than one port, then
  its needless to query for each of them. By doing a query onto one
  port, the virtual-server switching can be done once for all of them.
- Allow more than one real-server-checking per virtual-server-switching.
  This allows you do virtual-server-switching by doing, for instance one
  query onto the httpd, and one query onto the mysqld. Only if both
  report success the real-server is added to the list.

The srpms can be downloaded from
http://homes.tiscover.com/jrief/keepalived/keepalived-1.2.0rc1-1.src.rpm

The tarball
http://homes.tiscover.com/jrief/keepalived/keepalived-1.2.0rc1.tar.gz

The latest devel-branch of keepalived with THC can be checked out from
the cvs-repository at sourceforge.net:
> cvs -d:pserver:anonymous@xxxxxxxxxxxxxxxxxxx:/cvsroot/keepalived login
> cvs -z3 -d:pserver:anonymous@xxxxxxxxxxxxxxxxxxx:/cvsroot/keepalived \
checkout devel

Alexandre Cassen told me he might merge this patch with the main-branch
of keepalived. However I can't reach him for a week now. I therefore
propagate keepalived-THC this way for now. Sorry.

For those who use ldirectord, I started to write it in 2000. I turned
over to keepalived myself. Its faster, cleaner in design, and also much
smarter because You don't need any extra heartbeat.

Jacob


<Prev in Thread] Current Thread [Next in Thread>