drlb: a direct routing loadbalancer

Jean-Yves Moulin jym at ldh.org
Mon Mar 3 06:21:05 PST 2008


Hi everybody,

I'have made a simple software load-balancer for FreeBSD. It work only in 
direct-routing mode.

This is a kernel module that works for freebsd 6.2, 6.3 and 7.0 (tested) 
(and netbsd soon). It use pfil in order to watch incoming packet and 
redirect to real-server. You can define multiple virtual-ip for a same 
pool of real-server. You can use fourth scheduler: round-robin, 
least-connections, round-robin with weight and least-connections with 
weight. You can specify some timeout (before closing or dropping 
connections), persistence (for TLS) and the size of the connections hash 
table.

When you inhibit real-server, only new connections are not redirected to 
it. The load-balancer keep open-connections (that's why I made it. IPVS 
does'nt do this job right).

It come with two tools: drlbctl for configuring it. And lbdyn, who will 
check your real-server (ala keepalived).

It's a very simple tool and I need some times to add useful features 
(like sharing of connections table..) but I use in in a production 
environment. IPv6 will be tested soon.

You can find it here: http://jym.free.fr (under construction :-) and 
source here:  http://jym.free.fr/files/drlb-0.7.tar.gz

I will make a ports soon.

Comments are welcome.

Greetings from Paris!
jym


More information about the freebsd-net mailing list