Re: [asterisk-users] High Availability with Asterisk

2014-03-09 Thread Brynjolfur Thorvardsson
Hi all

Thanks for an interesting discussion.

I've looked at various options for load balancing Asterisk servers and
providing fail over support.

One thing is not clear to me is: What happens to queues in a load-balancing
environment? On our server, we have various queues with up to 20 incoming
calls waiting in each, with typically 1-5 queue members. If incoming calls
get placed randomly (or according to some heuristic) on different servers,
is there any way that Asterisk can handle queue functionality?

Our client sip phones can enter or leave queues as they wish, but each sip
phone is only registered on one server at a time - so queue members could be
registered at different servers in a load balancing environment. Same goes
for incoming calls, going to different servers but eventually ending up in
the same queue.

I'm not sure if queues would ever work in a load balancing scenario, and I
haven't found any information on the net to tell me otherwise. Does anybody
have any experience/knowledge of if and how it could work?

Best regards

Binni

-Original Message-
From: asterisk-users-boun...@lists.digium.com
[mailto:asterisk-users-boun...@lists.digium.com] On Behalf Of ad...@3a.hu
Sent: 8. marts 2014 21:28
To: Asterisk Users Mailing List - Non-Commercial Discussion
Subject: Re: [asterisk-users] High Availability with Asterisk

My approach (in theory only, so please correct me if I'm wrong) would be to
run asterisk on multiple boxes (one each).  A dedicated monitoring box
(nagios?  custom scripts?) would perform frequent checks against the boxes
(one of my previous projects one asterisk was using call files to
demonstrate its health to another one).

If a box fails, I would simply redirect/reroute its traffic to another one,
using network solutions.  Such as shutting down the production interface of
a suspectedly failed asterisk box, having an idle one pick up its IP
address, or using load balancing / routing / NAT to redirect the client's
traffic to a standby box.

My approach is based on the experience that linux based HA tools are often
not free, or don't scale well, or engineered to circumvent an error in a
slower manner (eg. booting a second VM takes too much time). 
  However in the network world, there are well known protocols that were
designed to take over in a matter of miliseconds.

I do understand that this would not provide 'session' data, so failing over
to a different box would mean the need to re-register, could cause calls to
drop etc.  This might be unacceptable for you.  As I said in the beginning,
I haven't been building such systems, in my experience a dropped call is not
that big of a deal, if it happens because the network cuts over to a
different box.  This could be handled with a pair of frontend load
balancers, where the number of asterisk boxes can be transparent.

hope this helps
adam





--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com -- New to
Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users


Re: [asterisk-users] High Availability with Asterisk

2014-03-09 Thread Hans Witvliet
On Sat, 2014-03-08 at 20:27 +, ad...@3a.hu wrote:
 My approach (in theory only, so please correct me if I'm wrong) would be 
 to run asterisk on multiple boxes (one each).  A dedicated monitoring 
 box (nagios?  custom scripts?) would perform frequent checks against the 
 boxes (one of my previous projects one asterisk was using call files to 
 demonstrate its health to another one).
 
 If a box fails, I would simply redirect/reroute its traffic to another 
 one, using network solutions.  Such as shutting down the production 
 interface of a suspectedly failed asterisk box, having an idle one pick 
 up its IP address, or using load balancing / routing / NAT to redirect 
 the client's traffic to a standby box.
 
 My approach is based on the experience that linux based HA tools are 
 often not free, or don't scale well, or engineered to circumvent an 
 error in a slower manner (eg. booting a second VM takes too much time). 
   However in the network world, there are well known protocols that were 
 designed to take over in a matter of miliseconds.
 
 I do understand that this would not provide 'session' data, so failing 
 over to a different box would mean the need to re-register, could cause 
 calls to drop etc.  This might be unacceptable for you.  As I said in 
 the beginning, I haven't been building such systems, in my experience a 
 dropped call is not that big of a deal, if it happens because the 
 network cuts over to a different box.  This could be handled with a pair 
 of frontend load balancers, where the number of asterisk boxes can be 
 transparent.
 
 hope this helps
 adam
===

Hi Adam,

Don't confuse high availability with load balancing, as these two
are not related. These two have totally different objectives and are
achieved in different ways.
Either/both of them can very well be achieved with opensource tools.

Even with commercial software is maintaining call when a intermediate
PABX breaks down nearly impossible




-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users