Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is there any solution for call continuity in case of failover? #364

Open
calvet27 opened this issue Jul 9, 2024 · 2 comments
Open

Is there any solution for call continuity in case of failover? #364

calvet27 opened this issue Jul 9, 2024 · 2 comments

Comments

@calvet27
Copy link

calvet27 commented Jul 9, 2024

I am using drachtio sip server and drachtio srf in node.js environment.
During call service with both, if the main server is unavailable due to a disaster or other reasons,
Is there a way to restore the call from the backup server?
That said, Is there a way to back up or restore SIP dialog?
Or, Does drachtio sip server support clustering?

@nvwx
Copy link

nvwx commented Jul 9, 2024

In general, the components of a drachtio solution can be architected to be highly available. For example, you could create a cluster of rtpengine services and multiple drachtio servers. Your middleware app would run on highly available infrastructure, such as a Kubernetes cluster or multiple virtual machines.

Most of what I mentioned leverages additional infrastructure such as load balancers, a cache such as Redis, and networking knowledge. You must also consider whether you intend to have a stateful failover in rtpengine and preserve the media.

In short, yes, you can create a highly available solution. Bear in mind all the components, as there's more to it than just the drachtio server and keeping track of the dialog.

@calvet27
Copy link
Author

@nvwx

Thank you for your reply.

In my case, I am using OpenSvc as a highly available infrastructure,
It has one main server and one backup server.
This is not a typical cluster configured for load balancing,
This is how the backup server operates when the main server fails.

The method you mentioned requires drachtio sip server to run constantly on two or more nodes.
In this case, Is there a way to process inbound calls only from drachtio sip server in a specific node?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants