[asterisk-users] Asterisk Cluster Scenario

Stefano Sasso stesasso at gmail.com
Sat Sep 25 05:22:25 CDT 2010


Hello folks,
	my company has experience in setting up single asterisk setup, but
recently one of our customers asked us to set up an asterisk cluster,
that must be High Availability and Load Balanced.
So I wrote here to have some hint or advice about the configuration we thought.

First of all I'll explain you the scenario:
The asterisk cluster must serve as Call Center "Hub-and-Spoke". There
are lots of little call-centers (~15 ops), phisically separated, that
must appears as a single "Big Virtual Call-Center". The call-center is
inbound and outbound.
Initially the "Virtual Call-Center" will be composed of 15 small
call-centers (= ~230 ops), but the prevision is to grow to ~800 ops.

Asterisk must work as B2BUA, because the customer does not want the
call-centers contact directly the upstream SIP providers. Asterisk
server must also record the call and, maybe, do some transcoding.

The single asterisks instances talk each-other with DUNDi/IAX2 to pass
the calls from an op to another op registered on another server.
We'll use a mysql database (NDB cluster) to avoid to have multiple
sip.conf files with the registration informations (asterisk-rt).
We must, in any case, use asterisk, because the whole call-center has
to be integrated with a 3rd part software for predictive calling ad
power dialing which has been developed for asterisk.

The SIP servers are behind NAT, because the customer want to use only
one public IP address; every asterisk server will have a different RTP
port range to avoid rtp conflicts.

And, for now, the LB part works manually registering the ops on
different asterisk servers.
But now we have to achieve the HA part of the setup.

We started considering a SIP hardware load balancer, like Radware or
Brocade, but neither a single nor a couple of this equipments (HA,
remember?) do not fit in the customer budget.
So, we started thinking about use OpenSIPS (formerly OpenSER) as a SIP
load-balancer. (the customer has server hardware that could be used
for this, and we will use VRRP for redundancy).

In the OpenSIPS features we read "load balancing with failover", but
we could not find any useful and complete configuration example.
Is OpenSIPS able to know if an asterisk server is UP or DOWN, or must
we use a 3rd part tool, like mon?

Anyone has experience in use OpenSIPS as SIP load balancer (not to
work as "real" SIP proxy)?

Any hint/advice for this part, or for the global setup?


Thanks in advance for the help!
	Stefano

PS: sorry for my weak english
PS2: sorry for cross posting but, if the general setup is more
asterisk related, the OpenSIPS part is, obviously, OpenSIP specific.

-- 
Stefano Sasso
http://stefano.dscnet.org/



More information about the asterisk-users mailing list