Dear all, hope to get some information from you guys!
For a redundant service we have to build up SIP proxy/registrar server in a high available scenario. Therefore, we will have 2 SIP proxy/registrar on two completely independent servers. They should be SIP dialog stateful and replicate all the session/call states between each other. If one server fails, the other should have all the SIP dialog information for call handling and accounting. How can this done in a stable and reliable way? Is this feature mature enough to support enterprise requirements? The only information I have is to build it up with the DISPATCHER module, but it seems more to be a stateless load-balancer instead of a HA module.
Who has experience with HA failover designs with Kamailio and can give me some hints?
Thank you very much in advance Kind regards Carel
Carel Reinhard Security and VoIP Engineer
SRG SSR Switzerland
Telefon direkt +41 31 350 94 07
Carel.Reinhard@srgssr.chmailto:Carel.Reinhard@srgssr.ch
Hi Carel,
this is a rather complex question with no simple yes or no answer. You can use the dialog module with no "in-memory" storage of dialog data and leave it to the database to do the replication. I think postgres has Multi-Master Replication, i am not sure about MySQL. At a major german telco operator, we did something similar: We had two servers, both with different addresses and an Alias for the other server. In that case, we had two loadbalancers (logically one in a HA setup) in front, who would do the failover in case. Worked fine.
Carsten
2012/6/5 Reinhard, Carel (GD) Carel.Reinhard@srgssr.ch:
Dear all, hope to get some information from you guys!
For a redundant service we have to build up SIP proxy/registrar server in a high available scenario. Therefore, we will have 2 SIP proxy/registrar on two completely independent servers. They should be SIP dialog stateful and replicate all the session/call states between each other. If one server fails, the other should have all the SIP dialog information for call handling and accounting. How can this done in a stable and reliable way? Is this feature mature enough to support enterprise requirements?
The only information I have is to build it up with the DISPATCHER module, but it seems more to be a stateless load-balancer instead of a HA module.
Who has experience with HA failover designs with Kamailio and can give me some hints?
Thank you very much in advance
Kind regards
Carel
Carel Reinhard Security and VoIP Engineer
SRG SSR Switzerland
Telefon direkt +41 31 350 94 07
Carel.Reinhard@srgssr.ch
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
Hi,
I personally think that there needs to be an official wiki page giving details about a basic redundant/HA server setup. A lot of people need this on regular basis. So I request forum members and contributors to share their guidelines on this.
Thanks, Sammy Go.
On Mon, Jun 11, 2012 at 3:32 PM, Carsten Bock carsten@ng-voice.com wrote:
Hi Carel,
this is a rather complex question with no simple yes or no answer. You can use the dialog module with no "in-memory" storage of dialog data and leave it to the database to do the replication. I think postgres has Multi-Master Replication, i am not sure about MySQL. At a major german telco operator, we did something similar: We had two servers, both with different addresses and an Alias for the other server. In that case, we had two loadbalancers (logically one in a HA setup) in front, who would do the failover in case. Worked fine.
Carsten
2012/6/5 Reinhard, Carel (GD) Carel.Reinhard@srgssr.ch:
Dear all, hope to get some information from you guys!
For a redundant service we have to build up SIP proxy/registrar server
in a
high available scenario. Therefore, we will have 2 SIP proxy/registrar on two completely independent servers. They should be SIP dialog stateful
and
replicate all the session/call states between each other. If one server fails, the other should have all the SIP dialog information for call handling and accounting. How can this done in a stable and reliable way?
Is
this feature mature enough to support enterprise requirements?
The only information I have is to build it up with the DISPATCHER module, but it seems more to be a stateless load-balancer instead of a HA module.
Who has experience with HA failover designs with Kamailio and can give me some hints?
Thank you very much in advance
Kind regards
Carel
Carel Reinhard Security and VoIP Engineer
SRG SSR Switzerland
Telefon direkt +41 31 350 94 07
Carel.Reinhard@srgssr.ch
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-- Carsten Bock CEO (Geschäftsführer)
ng-voice GmbH Schomburgstr. 80 D-22767 Hamburg / Germany
http://www.ng-voice.com mailto:carsten@ng-voice.com
Mobile +49 179 2021244 Office +49 40 34927219 Fax +49 40 34927220
Sitz der Gesellschaft: Hamburg Registergericht: Amtsgericht Hamburg, HRB 120189 Geschäftsführer: Carsten Bock Ust-ID: DE279344284
Hier finden Sie unsere handelsrechtlichen Pflichtangaben: http://www.ng-voice.com/imprint/
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
Hello,
the wiki is open for everyone to contribute: * http://www.kamailio.org/wiki/
You need to make yourself an account, the anonymous posting based on CAPTCHA was disabled due to spam bots easily breaking CAPTCHA system and posting spam.
If someone takes the time to search a bit through the archive, probably can find useful information to add to such page, then perhaps other people will come and contribute more.
The mailing list is full of useful information, the problem is that not many people are digesting it and write wiki pages ... most of the content is by core developers, but they have other tasks as well, so a hand from user community will be more useful.
Cheers, Daniel
On 6/11/12 12:48 PM, SamyGo wrote:
Hi,
I personally think that there needs to be an official wiki page giving details about a basic redundant/HA server setup. A lot of people need this on regular basis. So I request forum members and contributors to share their guidelines on this.
Thanks, Sammy Go.
On Mon, Jun 11, 2012 at 3:32 PM, Carsten Bock <carsten@ng-voice.com mailto:carsten@ng-voice.com> wrote:
Hi Carel, this is a rather complex question with no simple yes or no answer. You can use the dialog module with no "in-memory" storage of dialog data and leave it to the database to do the replication. I think postgres has Multi-Master Replication, i am not sure about MySQL. At a major german telco operator, we did something similar: We had two servers, both with different addresses and an Alias for the other server. In that case, we had two loadbalancers (logically one in a HA setup) in front, who would do the failover in case. Worked fine. Carsten 2012/6/5 Reinhard, Carel (GD) <Carel.Reinhard@srgssr.ch <mailto:Carel.Reinhard@srgssr.ch>>: > Dear all, hope to get some information from you guys! > > > > For a redundant service we have to build up SIP proxy/registrar server in a > high available scenario. Therefore, we will have 2 SIP proxy/registrar on > two completely independent servers. They should be SIP dialog stateful and > replicate all the session/call states between each other. If one server > fails, the other should have all the SIP dialog information for call > handling and accounting. How can this done in a stable and reliable way? Is > this feature mature enough to support enterprise requirements? > > The only information I have is to build it up with the DISPATCHER module, > but it seems more to be a stateless load-balancer instead of a HA module. > > > > Who has experience with HA failover designs with Kamailio and can give me > some hints? > > > > Thank you very much in advance > > Kind regards > > Carel > > > > > > Carel Reinhard > Security and VoIP Engineer > > > > SRG SSR Switzerland > > Telefon direkt +41 31 350 94 07 <tel:%2B41%2031%20350%2094%2007> > > Carel.Reinhard@srgssr.ch <mailto:Carel.Reinhard@srgssr.ch> > > > > > _______________________________________________ > SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list > sr-users@lists.sip-router.org <mailto:sr-users@lists.sip-router.org> > http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users > -- Carsten Bock CEO (Geschäftsführer) ng-voice GmbH Schomburgstr. 80 D-22767 Hamburg / Germany http://www.ng-voice.com mailto:carsten@ng-voice.com <mailto:carsten@ng-voice.com> Mobile +49 179 2021244 <tel:%2B49%20179%202021244> Office +49 40 34927219 <tel:%2B49%2040%2034927219> Fax +49 40 34927220 <tel:%2B49%2040%2034927220> Sitz der Gesellschaft: Hamburg Registergericht: Amtsgericht Hamburg, HRB 120189 Geschäftsführer: Carsten Bock Ust-ID: DE279344284 Hier finden Sie unsere handelsrechtlichen Pflichtangaben: http://www.ng-voice.com/imprint/ _______________________________________________ SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org <mailto:sr-users@lists.sip-router.org> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
Sir , I always do a thorough searching through the user's mailing list here., and I know I still find it difficult thinking about creating a cluster of Kamailio servers. If only there could be basic instructions and specially role of new version modules(may be *dmq*) to create a telco-grade implementation would be a great resource.
Thats just my suggestion, I am trying to setup a clustered service and still no luck. Only heartbeat works which is pretty basic, anything on top of heartbeat to make it application level redundant (active/passive OR active/active) like OCF resources and their documentation is never published or documented by anyone so far !
Thanks Sammy Go.
On Mon, Jun 11, 2012 at 4:38 PM, Daniel-Constantin Mierla <miconda@gmail.com
wrote:
Hello,
the wiki is open for everyone to contribute:
You need to make yourself an account, the anonymous posting based on CAPTCHA was disabled due to spam bots easily breaking CAPTCHA system and posting spam.
If someone takes the time to search a bit through the archive, probably can find useful information to add to such page, then perhaps other people will come and contribute more.
The mailing list is full of useful information, the problem is that not many people are digesting it and write wiki pages ... most of the content is by core developers, but they have other tasks as well, so a hand from user community will be more useful.
Cheers, Daniel
On 6/11/12 12:48 PM, SamyGo wrote:
Hi,
I personally think that there needs to be an official wiki page giving details about a basic redundant/HA server setup. A lot of people need this on regular basis. So I request forum members and contributors to share their guidelines on this.
Thanks, Sammy Go.
On Mon, Jun 11, 2012 at 3:32 PM, Carsten Bock carsten@ng-voice.comwrote:
Hi Carel,
this is a rather complex question with no simple yes or no answer. You can use the dialog module with no "in-memory" storage of dialog data and leave it to the database to do the replication. I think postgres has Multi-Master Replication, i am not sure about MySQL. At a major german telco operator, we did something similar: We had two servers, both with different addresses and an Alias for the other server. In that case, we had two loadbalancers (logically one in a HA setup) in front, who would do the failover in case. Worked fine.
Carsten
2012/6/5 Reinhard, Carel (GD) Carel.Reinhard@srgssr.ch:
Dear all, hope to get some information from you guys!
For a redundant service we have to build up SIP proxy/registrar server
in a
high available scenario. Therefore, we will have 2 SIP proxy/registrar
on
two completely independent servers. They should be SIP dialog stateful
and
replicate all the session/call states between each other. If one server fails, the other should have all the SIP dialog information for call handling and accounting. How can this done in a stable and reliable
way? Is
this feature mature enough to support enterprise requirements?
The only information I have is to build it up with the DISPATCHER
module,
but it seems more to be a stateless load-balancer instead of a HA
module.
Who has experience with HA failover designs with Kamailio and can give
me
some hints?
Thank you very much in advance
Kind regards
Carel
Carel Reinhard Security and VoIP Engineer
SRG SSR Switzerland
Telefon direkt +41 31 350 94 07
Carel.Reinhard@srgssr.ch
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-- Carsten Bock CEO (Geschäftsführer)
ng-voice GmbH Schomburgstr. 80 D-22767 Hamburg / Germany
http://www.ng-voice.com mailto:carsten@ng-voice.com
Mobile +49 179 2021244 <%2B49%20179%202021244> Office +49 40 34927219 <%2B49%2040%2034927219> Fax +49 40 34927220 <%2B49%2040%2034927220>
Sitz der Gesellschaft: Hamburg Registergericht: Amtsgericht Hamburg, HRB 120189 Geschäftsführer: Carsten Bock Ust-ID: DE279344284
Hier finden Sie unsere handelsrechtlichen Pflichtangaben: http://www.ng-voice.com/imprint/
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing listsr-users@lists.sip-router.orghttp://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-- Daniel-Constantin Mierla - http://www.asipto.comhttp://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda Kamailio Advanced Training, Seattle, USA, Sep 23-26, 2012 - http://asipto.com/u/katu Kamailio Practical Workshop, Netherlands, Sep 10-12, 2012 - http://asipto.com/u/kpw
SamyGo writes:
Thats just my suggestion, I am trying to setup a clustered service and still no luck. Only heartbeat works which is pretty basic, anything on top of heartbeat to make it application level redundant (active/passive OR active/active) like OCF resources and their documentation is never published or documented by anyone so far !
there is nothing special in kamalio crm primitive definition, for example:
primitive sip-proxy lsb:kamailio op monitor interval=15s timeout=10s \ start-delay=60s
net has many examples on how you combine such a primitive to a group with a virtual-ip primitive.
-- juha
Thanks Juha :)
Really appreciate that. Would you please like to contribute the whole procedure so that everyone knows whats happening here !! As soon as I finish with this one *successfully* I will write about it in my blog, so anything that leads to its successful implementation would benefit alot of other folks. Thanks again BR Sammy
On Mon, Jun 11, 2012 at 4:56 PM, Juha Heinanen jh@tutpro.com wrote:
SamyGo writes:
Thats just my suggestion, I am trying to setup a clustered service and still no luck. Only heartbeat works which is pretty basic, anything on
top
of heartbeat to make it application level redundant (active/passive OR active/active) like OCF resources and their documentation is never published or documented by anyone so far !
there is nothing special in kamalio crm primitive definition, for example:
primitive sip-proxy lsb:kamailio op monitor interval=15s timeout=10s \ start-delay=60s
net has many examples on how you combine such a primitive to a group with a virtual-ip primitive.
-- juha
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
SamyGo writes:
Really appreciate that. Would you please like to contribute the whole procedure so that everyone knows whats happening here !!
i'm not able write a tutorial on how to setup and use heartbeat/pacemaker. virtual-ip and sip-proxy could be configured something like this (i haven't tested it):
primitive virtual-ip ocf:heartbeat:IPaddr2 params ip=192.75.101.10 broadcast=192.75.101.255 cidr_netmask=24 op monitor interval=15s
primitive sip-proxy lsb:sip-proxy op monitor interval=15s timeout=15s start-delay=60s
order virtual-ip-before-sip-proxy mandatory: virtual-ip:start sip-proxy
colocation sip-proxy-on-virtual-ip inf: sip-proxy virtual-ip
-- juha
OK thanks, I'm trying this all for myself. once I try this, test this, and get something done I will post the tutorial for all.* I may need help in this.* Regards, Sammy
On Mon, Jun 11, 2012 at 5:15 PM, Juha Heinanen jh@tutpro.com wrote:
SamyGo writes:
Really appreciate that. Would you please like to contribute the whole procedure so that everyone knows whats happening here !!
i'm not able write a tutorial on how to setup and use heartbeat/pacemaker. virtual-ip and sip-proxy could be configured something like this (i haven't tested it):
primitive virtual-ip ocf:heartbeat:IPaddr2 params ip=192.75.101.10 broadcast=192.75.101.255 cidr_netmask=24 op monitor interval=15s
primitive sip-proxy lsb:sip-proxy op monitor interval=15s timeout=15s start-delay=60s
order virtual-ip-before-sip-proxy mandatory: virtual-ip:start sip-proxy
colocation sip-proxy-on-virtual-ip inf: sip-proxy virtual-ip
-- juha
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
Hi again,
Some progress.. I have configured heartbeat and with the crm option to set kamailio as resource i.e
crm(test-conf)configure# *primitive Kamailio lsb::kamailio op monitor interval=15s*
I can see that if I put the primary node on standby the kamailio instance starts on secondary node ! but this isn't working other way around e.g If Kamailio crashes the secondary node doesn't do anything.
I've read people that they used sipsak and some piece of code that pings Kamailio and if it fails to respond it triggers to heartbeat. Is there any help on this !
Regards, Sammy G.
On Mon, Jun 11, 2012 at 5:20 PM, SamyGo govoiper@gmail.com wrote:
OK thanks, I'm trying this all for myself. once I try this, test this, and get something done I will post the tutorial for all.* I may need help in this.
Regards, Sammy
On Mon, Jun 11, 2012 at 5:15 PM, Juha Heinanen jh@tutpro.com wrote:
SamyGo writes:
Really appreciate that. Would you please like to contribute the whole procedure so that everyone knows whats happening here !!
i'm not able write a tutorial on how to setup and use heartbeat/pacemaker. virtual-ip and sip-proxy could be configured something like this (i haven't tested it):
primitive virtual-ip ocf:heartbeat:IPaddr2 params ip=192.75.101.10 broadcast=192.75.101.255 cidr_netmask=24 op monitor interval=15s
primitive sip-proxy lsb:sip-proxy op monitor interval=15s timeout=15s start-delay=60s
order virtual-ip-before-sip-proxy mandatory: virtual-ip:start sip-proxy
colocation sip-proxy-on-virtual-ip inf: sip-proxy virtual-ip
-- juha
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
Infact if kamailio goes down heartbeat restarts it again !! how do I stop heartbeat doing it and let the other node take over the resource!
On Tue, Jun 12, 2012 at 6:05 PM, SamyGo govoiper@gmail.com wrote:
Hi again,
Some progress.. I have configured heartbeat and with the crm option to set kamailio as resource i.e
crm(test-conf)configure# *primitive Kamailio lsb::kamailio op monitor interval=15s*
I can see that if I put the primary node on standby the kamailio instance starts on secondary node ! but this isn't working other way around e.g If Kamailio crashes the secondary node doesn't do anything.
I've read people that they used sipsak and some piece of code that pings Kamailio and if it fails to respond it triggers to heartbeat. Is there any help on this !
Regards, Sammy G.
On Mon, Jun 11, 2012 at 5:20 PM, SamyGo govoiper@gmail.com wrote:
OK thanks, I'm trying this all for myself. once I try this, test this, and get something done I will post the tutorial for all.* I may need help in this.* Regards, Sammy
On Mon, Jun 11, 2012 at 5:15 PM, Juha Heinanen jh@tutpro.com wrote:
SamyGo writes:
Really appreciate that. Would you please like to contribute the whole procedure so that everyone knows whats happening here !!
i'm not able write a tutorial on how to setup and use heartbeat/pacemaker. virtual-ip and sip-proxy could be configured something like this (i haven't tested it):
primitive virtual-ip ocf:heartbeat:IPaddr2 params ip=192.75.101.10 broadcast=192.75.101.255 cidr_netmask=24 op monitor interval=15s
primitive sip-proxy lsb:sip-proxy op monitor interval=15s timeout=15s start-delay=60s
order virtual-ip-before-sip-proxy mandatory: virtual-ip:start sip-proxy
colocation sip-proxy-on-virtual-ip inf: sip-proxy virtual-ip
-- juha
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users