[Freeswitch-users] HA clustering solution?

Łukasz Zwierko lzwierko at gmail.com
Wed Aug 27 03:42:24 PDT 2008


Hi, Regarding HA, I don't suppose you'll be able to go without any
front-end, beacuse of IP-connectivity reasons, if you plan to work in
active-standby mode . Active box needs to have an unique IP, otherwise
each client will have to have 2 (or more) IP addresses configured.
As solution you can use a switch with ip routing based on heartbeat
(which can be a icmp ping or http get or others).  The idea is you
configure virtual ip on each of your boxes, and FS runs on this IP.
Boxes are only connected to your IP network through the switch. the
switch directs all traffic to only one of the boxes, checking the
heartbeat all the time. If one machine failes, trafic starts being
routed to the other box.
With this solution you don't have to do any tricks to have a single IP
address for your clients. there are of course other solutions, this
one gives you the shortest switch time though.

As for the transferring call states between the machines, much of call
data is distibuted into modules. Now if we wanted to keep consistent
states between two FS instances, we'd have to come up with some
interfaces to firstly serialize the states and then 'revoke' them on
second machine. No that is of course doable, but I'd require enhacing
internal FS interfaces (especially those to endpoint modules) so that
a call controls in not-initial states could be created. That is a huge
amount of work, I don't suppose it's worth it.

br

Ł

2008/8/27 James Green <james.green at stealthnet.net>:
> Tom,
>
> Configuration: that should be easy using XML CURL to load what would
> otherwise be in the conf/ XML files. I would strongly recommend looking
> at this.
>
> Call state I wouldn't like to comment on, I have not looked into it. I
> would imagine it's unlikely to succeed based on the uuid of each call
> only being known to the handler FreeSWITCH instance. I could have my
> assumptions wrong of course.
>
> I take it incoming calls would be asked to try each of several IPs in
> turn until a connection is successful? Else you would need to "notice"
> one instance was no longer active and ask whomever was routing calls to
> it to divert.
>
> I still prefer the idea of 2+ proxy boxes. It would be simpler to add
> more as load increases, and far simpler to add additional IVRs (FS) into
> a backend pool. Heartbeat solutions have potential issues such as single
> point of failure and split brain.
>
> James
>
> Tom Warren wrote:
>> Hi James,
>>
>> I'd like to avoid front-ending the FS boxes and instead have them
>> load-share amongst themselves or sit in a hot/standby arrangement
>> while updating the other box(es) with call state and configuration
>> changes. They would be connected directly via a closed tertiary
>> network so that the heartbeat could be set to a very low value, and
>> call state data would not traverse the same path as the call traffic.
>> Am I just dreaming? Could a standby box take over call in progress
>> when the primary fails?
>
> _______________________________________________
> Freeswitch-users mailing list
> Freeswitch-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>


More information about the FreeSWITCH-users mailing list