Date: Fri, 22 Apr 2005 10:51:56 +0200 From: Jeremie Le Hen <jeremie@le-hen.org> To: dragonfly dragonfly <dragonylffly@hotmail.com> Cc: freebsd-arch@freebsd.org Subject: Re: How about porting LVS to FreeBSD Message-ID: <20050422085156.GQ91329@obiwan.tataz.chchile.org> In-Reply-To: <BAY19-F250EDA104BF5F539706E93DE2A0@phx.gbl> References: <BAY19-F250EDA104BF5F539706E93DE2A0@phx.gbl>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, > LVS(http://www.linuxvirtualserver.org/) is a widely used server cluster > schedule system,which is be included in Linux official kernel 2.4 and 2.6 > release. > Recently i ported LVS/ipvs to FreeBSD,and released 0.1.0 version > (http://dragon.linux-vs.org/~dragonfly/htm/lvs_freebsd.htm).It is only a > draft release,only to prove that LVS can play happily with FreeBSD:).It > support LVS/DR and Round Robin schedule algorithm.It is been in hot > developing.Welcome to test it and hope it be useful. This is very interesting, thank you. I know that LVS uses keepalived(8) to do VRRP and although I must admit it is very useful and powerful, this daemon is IMHO a great mess. (For the short story, the release process is awful, not to say inexistant. Indeed, I use keepalived 1.1.7 at work and this version has an annoying bug for us but we found an acceptable workaround. New versions has been released since, but when 1.1.8 was out, there have been numerous new bugs introduced that needed the version 1.1.9 to be quickly released to correct them. But this version has in turn introduced new bugs and finally version 1.1.10 fixed everything IIRC. Now the version is 1.1.11, but I'm still waiting to jump to this version as I'm afraid to come across new bugs for which I won't find an acceptable workaround.) What I want to know is if you are planning to simply port keepalived(8) to FreeBSD or use the BSD flavoured replacement for VRRP : CARP. I'm convinced this is not a trivial job as keepalived(8) is also used as a ISO level 7 health-checker. AFAIK, VRRP is completely implemented in userland on Linux as the RFC requires to use a special MAC address for the clustered IP but the Linux kernel doesn't support to have more than one MAC address for an interface. Instead, MAC address spoofing is achieved by keepalived(8), by sending gratuitous ARP requests. I think the health-checker part is interesting in keepalived(8) but it would be nice to have the HA mechanic handled by CARP (or maybe using UCARP [1] would be easier, since it's in userland too). I'll try to look at this today. Thanks again for your work. Regards, [1] http://www.ucarp.org/ -- Jeremie Le Hen < jeremie at le-hen dot org >< ttz at chchile dot org >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050422085156.GQ91329>