Hi, On Thu, 11 Jun 2009 at 16:33 -0400, Michael Giagnocavo wrote:
Well, if you're running multiple machines, waiting for it to drainstop isn't that big of a deal unless you're in some sort of hurry, right? Give it an hour or so to drainstop, then kill 'em.
Yes that's exactly what I'm trying to do. The problem is some people will only try one IP address.
Would it not be simpler to try to do something with re-invites or REFER, assuming your endpoints support it?
That was actually plan A. I already added a property in sip_profile called failover_redirect, which specifies another server to try if FS can't allocate any more sessions (e.g. too busy, paused, shutdown asap, etc.), by sending back a SIP 302 Moved Temporarily response, instead of 503 Max Calls In Progress. Turns out not all my endpoints support it :( I considered REFER too but there seems to be even less support for that. If I can't get the socket-sharing upgrade working then I will fall back to this - and peers which don't support the 302 response (or more likely, don't authorise it) will just get no service during the upgrade.
-Michael
{P^/
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of John Dalgliesh Sent: Thursday, June 11, 2009 12:14 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] Live Upgrade Techniques
I assume he's talking about hardware failures here :P
But to answer the question: crashes are easy to deal with. With a crash you have lost the calls that are in progress anyway; you don't have to manage a gradual transition.
Currently, since FS is quite quick to start up, I am just relaunching it immediately.
But when I have a second box up and running what I'll do is just add the IP of the dead machine as another IP of the second box, and then it will take all the old machine's traffic. That is the plan anyway. I've seen some commercial boxes that use a similar trick.
...