Question about round robin

View: New views
9 Messages — Rating Filter:   Alert me  

Question about round robin

by Kevin-206 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello,



I am curious about simple round robin load balancing w/ PF. I see how simple
it is to setup within the FreeBSD configuration file, but have a fairly
simple question.

Does PF detect if one of the addresses in the "pool" is not responsive? Or
does it just blindly send traffic to all the addresses in the pool
regardless? Is there some sort of heartbeat functionality or status check
perhaps? Has anyone accomplished something along these lines? Load balancing
would be pretty useless if I couldn't take a server out of the pool without
having to re-configure PF every time.


Any comments are appreciated!


Thanks,


Kevin
www.stardothosting.com



_______________________________________________
freebsd-pf@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-pf
To unsubscribe, send any mail to "freebsd-pf-unsubscribe@..."

Re: Question about round robin

by britneyfreek-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

i am not quite sure but i assume pf does no availabililtty checks as
responses from systems behind an address might take too long...

- regards

Am 06.11.2009 um 16:34 schrieb "Kevin" <k@...>:

> Hello,
>
>
>
> I am curious about simple round robin load balancing w/ PF. I see
> how simple
> it is to setup within the FreeBSD configuration file, but have a
> fairly
> simple question.
>
> Does PF detect if one of the addresses in the "pool" is not
> responsive? Or
> does it just blindly send traffic to all the addresses in the pool
> regardless? Is there some sort of heartbeat functionality or status
> check
> perhaps? Has anyone accomplished something along these lines? Load
> balancing
> would be pretty useless if I couldn't take a server out of the pool
> without
> having to re-configure PF every time.
>
>
> Any comments are appreciated!
>
>
> Thanks,
>
>
> Kevin
> www.stardothosting.com
>
>
>
> _______________________________________________
> freebsd-pf@... mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-pf
> To unsubscribe, send any mail to "freebsd-pf-unsubscribe@..."
_______________________________________________
freebsd-pf@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-pf
To unsubscribe, send any mail to "freebsd-pf-unsubscribe@..."

RE: Question about round robin

by Kevin-206 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message



> -----Original Message-----
> From: no name [mailto:britneyfreek@...]
> Sent: Friday, November 06, 2009 10:52 AM
> To: Kevin
> Cc: freebsd-pf@...
> Subject: Re: Question about round robin
>
> i am not quite sure but i assume pf does no availabililtty checks as
> responses from systems behind an address might take too long...
>
> - regards
>
> Am 06.11.2009 um 16:34 schrieb "Kevin" <k@...>:
>
> > Hello,
> >
> >
> >
> > I am curious about simple round robin load balancing w/ PF. I see
> > how simple
> > it is to setup within the FreeBSD configuration file, but have a
> > fairly
> > simple question.
> >
> > Does PF detect if one of the addresses in the "pool" is not
> > responsive? Or
> > does it just blindly send traffic to all the addresses in the pool
> > regardless? Is there some sort of heartbeat functionality or status
> > check
> > perhaps? Has anyone accomplished something along these lines? Load
> > balancing
> > would be pretty useless if I couldn't take a server out of the pool
> > without
> > having to re-configure PF every time.
> >
> >
> > Any comments are appreciated!
> >
> >
> > Thanks,
> >
> >
> > Kevin
> > www.stardothosting.com


I've searched the freebsd-* mailing list as well as gone through the handbook regarding load balancing w/ PF (http://www.openbsd.org/faq/pf/pools.html) and found no mention of any kind of inherent availability checks or anything along those lines. Have I missed something?

Seems that all the options (bitmask, random, source-hash, round-robin) provide for different ways to distribute traffic to the servers, but if a server dies or becomes unresponsive it would compromise the pool in itself. Most other load balancing solutions such as LVS can be incorporated with keepalived to allow for status checking.

I would love to know anyone who may have implemented a solution like that with PF + round robin.


Thanks,

Kevin

_______________________________________________
freebsd-pf@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-pf
To unsubscribe, send any mail to "freebsd-pf-unsubscribe@..."

RE: Question about round robin

by Catalin Miclaus :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

As workaround you can write a script to check availability and update pf config accordingly that you can run from cron every minute.



















Catalin Miclaus I ISP/Data Team
Starcomms Plc.



-----Original Message-----
From: owner-freebsd-pf@... [mailto:owner-freebsd-pf@...] On Behalf Of no name
Sent: Friday, November 06, 2009 4:52 PM
To: Kevin
Cc: freebsd-pf@...
Subject: Re: Question about round robin

i am not quite sure but i assume pf does no availabililtty checks as
responses from systems behind an address might take too long...

- regards

Am 06.11.2009 um 16:34 schrieb "Kevin" <k@...>:

> Hello,
>
>
>
> I am curious about simple round robin load balancing w/ PF. I see
> how simple
> it is to setup within the FreeBSD configuration file, but have a
> fairly
> simple question.
>
> Does PF detect if one of the addresses in the "pool" is not
> responsive? Or
> does it just blindly send traffic to all the addresses in the pool
> regardless? Is there some sort of heartbeat functionality or status
> check
> perhaps? Has anyone accomplished something along these lines? Load
> balancing
> would be pretty useless if I couldn't take a server out of the pool
> without
> having to re-configure PF every time.
>
>
> Any comments are appreciated!
>
>
> Thanks,
>
>
> Kevin
> www.stardothosting.com
>
>
>
> _______________________________________________
> freebsd-pf@... mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-pf
> To unsubscribe, send any mail to "freebsd-pf-unsubscribe@..."
_______________________________________________
freebsd-pf@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-pf
To unsubscribe, send any mail to "freebsd-pf-unsubscribe@..."


DISCLAIMER: The information contained in this message (including any attachments) is confidential and may be privileged. If you have received it by mistake please notify the sender by return e-mail and permanently delete this message and any attachments from your system. Any form of dissemination, use, review, distribution, printing or copying of this message in whole or in part is strictly prohibited if you are not the intended recipient of this e-mail. Please note that e-mails are susceptible to change. STARCOMMS PLC shall not be liable for the improper or incomplete transmission of the information contained in this communication nor for any delay in its receipt or damage to your system. STARCOMMS PLC does not guarantee that the integrity of this communication has been maintained or that this communication is free of viruses, interceptions or interferences. STARCOMMS PLC reserves the right to monitor all e-mail communications, whether related to the business of STARCOMMS or not, through its internal or external networks.
_______________________________________________
freebsd-pf@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-pf
To unsubscribe, send any mail to "freebsd-pf-unsubscribe@..."

Re: Question about round robin

by Scott Ullrich :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Fri, Nov 6, 2009 at 11:01 AM, Kevin <k@...> wrote:
> I've searched the freebsd-* mailing list as well as gone through the handbook regarding load balancing w/ PF (http://www.openbsd.org/faq/pf/pools.html) and found no mention of any kind of inherent availability checks or anything along those lines. Have I missed something?
>
> Seems that all the options (bitmask, random, source-hash, round-robin) provide for different ways to distribute traffic to the servers, but if a server dies or becomes unresponsive it would compromise the pool in itself. Most other load balancing solutions such as LVS can be incorporated with keepalived to allow for status checking.
>
> I would love to know anyone who may have implemented a solution like that with PF + round robin.

Take a look at relayd and slbd.

Scott
_______________________________________________
freebsd-pf@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-pf
To unsubscribe, send any mail to "freebsd-pf-unsubscribe@..."

Re: Question about round robin

by Max Laier :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Friday 06 November 2009 17:35:26 Scott Ullrich wrote:

> On Fri, Nov 6, 2009 at 11:01 AM, Kevin <k@...> wrote:
> > I've searched the freebsd-* mailing list as well as gone through the
> > handbook regarding load balancing w/ PF
> > (http://www.openbsd.org/faq/pf/pools.html) and found no mention of any
> > kind of inherent availability checks or anything along those lines. Have
> > I missed something?
> >
> > Seems that all the options (bitmask, random, source-hash, round-robin)
> > provide for different ways to distribute traffic to the servers, but if a
> > server dies or becomes unresponsive it would compromise the pool in
> > itself. Most other load balancing solutions such as LVS can be
> > incorporated with keepalived to allow for status checking.
> >
> > I would love to know anyone who may have implemented a solution like that
> > with PF + round robin.
>
> Take a look at relayd and slbd.

I was about to say ... http://www.freshports.org/net/relayd/

--
/"\  Best regards,                      | mlaier@...
\ /  Max Laier                          | ICQ #67774661
 X   http://pf4freebsd.love2party.net/  | mlaier@EFnet
/ \  ASCII Ribbon Campaign              | Against HTML Mail and News
_______________________________________________
freebsd-pf@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-pf
To unsubscribe, send any mail to "freebsd-pf-unsubscribe@..."

RE: Question about round robin

by Kevin-206 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

> > Take a look at relayd and slbd.
>
> I was about to say ... http://www.freshports.org/net/relayd/


Thank you all for the suggestions so far. Ideally I'd like something that
can work with PF, such as relayd. Since this is only www load balancing, I
think that may be the best solution, although I am evaluating HAProxy as
well.


Thanks again ,


Kevin


_______________________________________________
freebsd-pf@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-pf
To unsubscribe, send any mail to "freebsd-pf-unsubscribe@..."

Re: Question about round robin

by Miroslav Lachman :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Kevin wrote:

> I am curious about simple round robin load balancing w/ PF. I see how simple
> it is to setup within the FreeBSD configuration file, but have a fairly
> simple question.
>
> Does PF detect if one of the addresses in the "pool" is not responsive? Or
> does it just blindly send traffic to all the addresses in the pool
> regardless? Is there some sort of heartbeat functionality or status check
> perhaps? Has anyone accomplished something along these lines? Load balancing
> would be pretty useless if I couldn't take a server out of the pool without
> having to re-configure PF every time.

"The round-robin method will accept multiple individual addresses using
a list or table."

Tables are easily maintained by external applications / scripts - you
can update theme without reloading of the rules. So you can write some
little daemon pinging all your hosts and drop IP of unresponsive host
from the table.
Or you can write some complex system to monitor hosts resources (CPU
load, free memory, disk IO, etc.) and maintain content of the table by
this criteria so you can get balancing based on real server load.

Miroslav Lachman
_______________________________________________
freebsd-pf@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-pf
To unsubscribe, send any mail to "freebsd-pf-unsubscribe@..."

RE: Question about round robin

by Kevin-206 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

> Tables are easily maintained by external applications / scripts - you
> can update theme without reloading of the rules. So you can write some
> little daemon pinging all your hosts and drop IP of unresponsive host
> from the table.
> Or you can write some complex system to monitor hosts resources (CPU
> load, free memory, disk IO, etc.) and maintain content of the table by
> this criteria so you can get balancing based on real server load.
>
> Miroslav Lachman


Since what I'm trying to do (balance simple www traffic) isn't that
complicated, I was hoping for some of this functionality to be inherent in
PF. Wishful thinking I guess :)

I wanted to avoid writing scripts, however, perhaps existing heartbeat /
status checking solutions can be integrated in this way.


Thank you


_______________________________________________
freebsd-pf@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-pf
To unsubscribe, send any mail to "freebsd-pf-unsubscribe@..."