[Asterisk-Users] Help needed

Alistair Cunningham acunningham at integrics.com
Mon Mar 7 05:41:47 MST 2005


Ismael,

I'm not going to give you a full answer, because this is a big topic, 
and I sell high availability systems to my own customers. Having said 
that, here are some ideas. This list is not definitive, and I'm sure 
other people will have other suggestions.

You have 2 issues:

1. Keeping the configuration and data in sync.

You can keep the config files in sync using rsync; that's the easy part.

If you use the Asterisk internal database for persistent data, you'll 
need to keep that in sync. Offhand, I don't know how to do this, as I 
tend not to use the Asterisk DB for large systems. If you were paying 
me, I'd go and figure it out, but as you're not, I'm too lazy! Go search 
on google.

If you use an SQL database, you could connect both machines to one 
database server, though this then makes this machine a single point of 
failure. You could use MySQL's master-slave replication. You could use 
an O/S level failover product like GFS. You could handle it at 
application level, writing to more than one database server (though this 
is really hard to get right).

2. Routing calls to the working machine.

The easy and cheap way is to do the failover is by hand. Keep a warm 
spare running with it's configuration synchronised, then if the master 
fails, unplug it, and plug in the spare.

If you want it automatic:

If you have E1s or T1s, most PBXs and providers can detect trunks in a 
trunk group with loss of signal, and take that trunk out of the group. 
Thus you connect trunks to each machine, and when one fails, no calls 
are delivered to it.

For VoIP, if your clients and VoIP peers can handle DNS SRV records 
properly, they can fail over when a machine goes down. Be warned that 
many products don't work properly.

For other Asterisk systems, use the 'qualify' option in sip.conf so it 
knows when other systems are available, then different priorities in 
extensions.conf to fail over.

If neither of the above are possible, consider using IP takeover. This 
is a tricky thing to make work 100% - you may need expert help.

For FXS ports for analogue phones, there aren't many options, as they're 
dumb devices. You may be able to find some hardware box that has N FXS 
ports and 2N FXO ports that can route calls from analogue phones to the 
correct machine.

Good luck! You've chosen a difficult area to work in. If you run into 
problems, we can offer help on a commercial basis. I've installed some 
very large high availability systems - voicemail clusters each with 
400,000 users, 96 T1s, and no single point of failure, for instance.

Alistair Cunningham,
Integrics Ltd,
Telephony, Database, Unix consulting worldwide
+44 (0)7870 699 479
http://integrics.com/


igil at europesip.com wrote:
> 
> Hello all,
> 
> I Have to install an asterisk based PBX on a large Bussines, about 200 
> extensions, where the phone is a very critical service, this bussines 
> need to be called and call the whole day.
> 
> I am thinking to install two asterisk servers with the same config, and 
> if one of them will be broken the otrer one takes the control of all the 
> calls.
> 
> Actualy, I do not know how would be the best way to do that, via 
> hardware (buying a especific machine)(witch one), via software (for 
> example rsinc, or witch software soulh I use), or other vay.
> 
> What do you think about that?
> Witch way do you prefer?
> How do you do that?
> 
> Any clue will be wellcomed.
> 
> Ismael.
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Asterisk-Users mailing list
> Asterisk-Users at lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-users
> To UNSUBSCRIBE or update options visit:
>    http://lists.digium.com/mailman/listinfo/asterisk-users



More information about the asterisk-users mailing list