Difference between revisions of "Implementations"

From Kolmisoft Wiki
Jump to navigationJump to search
Line 36: Line 36:


== 2 Servers Solution with 2 IP Addresses ==
== 2 Servers Solution with 2 IP Addresses ==
[[Image:2serversaASTDBandGUIDB_v2.png|800px]]


The solution allows placing two servers in different locations. In case of broken connection or broken database replication between servers, each site will become separated systems and runs its own billing, which is not desirable in most cases.  
The solution allows placing two servers in different locations. In case of broken connection or broken database replication between servers, each site will become separated systems and runs its own billing, which is not desirable in most cases.  
Line 43: Line 42:


2 IP Addresses allows route balancing at the side of the customers/vendors. They will use 2 IPs to balance traffic on their side.
2 IP Addresses allows route balancing at the side of the customers/vendors. They will use 2 IPs to balance traffic on their side.
[[Image:2serversaASTDBandGUIDB_v2.png|800px]]


<br><br>
<br><br>

Revision as of 10:40, 21 May 2019

This page shows some ways how MOR system can be used. Examples are from real implementations.

On all implementations listed below, it's recommended to deploy Asterisk and DB servers in the same datacenter. This will ensure stable system functioning.

Even though it's possible to deploy these elements in different locations, but such implementations may cause many issues, related with delays between different networks.

For M2 implementations please check here




Redundancy between two data centers

There's always a risk that data center in which you keep your servers can be down for various reasons.

To reduce such risk you can consider implementing redundancy between two data centers that are located in different countries or continents.

However, such implementation can work only if both data centers can meet requirements which are described here (see Redundant servers).

The most common problem is that different data centers cannot ensure such requirements for Virtual IP.



1 Server Basic System

This is a very basic solution All-in-one-Server. No redundancy, no High-Availability, no Scalability.

We recommend to use it only in the testing environment.

Not safe to use in the real business environment.


MOR 1server.png



2 Servers Solution with 2 IP Addresses

The solution allows placing two servers in different locations. In case of broken connection or broken database replication between servers, each site will become separated systems and runs its own billing, which is not desirable in most cases.

It provides double capacity with increased risk of malfunctioning in case of hardware/software/network failure.

2 IP Addresses allows route balancing at the side of the customers/vendors. They will use 2 IPs to balance traffic on their side.

2serversaASTDBandGUIDB v2.png




2 Asterisk servers solution

2asterisks.png

This solution has two Asterisk servers.

Such system is used in order to increase the capacity of the system in terms of concurrent calls.




2 server redundant solution

2serverredundant withlinuxha.png 2serverredundant withlinuxha v2.png

This is the most popular solution because it is fully redundant and most stable.

More info: 2 server redundant solution




4 server redundant solution

4serverredundant withlinuxha.png Stable and redundant solution for high performance.

More info: 4 server redundant solution




Ita.jpg 4 server solution in Italy with 16 E1

Impl 2ast1db1gui16e1.png

  • Such system is in Italy serving Call Shops
  • E1 hardware is 2 x Sangoma A108DE cards
  • This implementation is used for high volume calls to/from PSTN network over 16 E1 links were 4+4 E1 is for incoming and 4+4 E1 is for outgoing (on Asterisk 1 server 4 incoming/4 outgoing and same on server Asterisk 2).
  • Separate server is dedicated to database which minimizes load on Asterisk servers.
  • GUI is on separate server with it's own DB connected to main DB server over MySQL Replication.



Many Asterisk servers with DB Replication

Impl nast2db1gui.png



SIP Balancer solutions

Minimal structure without redundancy

Ccl 3servers minimal structure.png

NOTES:

  • GUI is on Asterisk/DB servers
  • When Proxy server (OpenSIPS) crashes, all system is down -> no redundancy, not recommended in production, good for testing
  • DB (Asterisk/GUI) servers share 1 IP also managed by Heartbeat
    • Setup without Heartbeat also is possible, but this introduces 1 more point of failure (DB server), but simplifies the setup, thus allowing faster setup for testing



Minimal structure for full-redundancy

Ccl 4servers full redundancy.png

NOTES:

  • GUI is on Asterisk/DB servers
  • Proxy servers share 1 IP managed by Heartbeat
  • DB (Asterisk/GUI) servers share another 1 IP also managed by Heartbeat



Multiple Asterisk servers, high performance system with SIP balancer and DB Replication

Impl 1sipbalnast2db1gui.png

  • SIP balancer
  • If one of Asterisk servers fails, SIP balancer routes calls via remained Asterisk servers.
  • LinuxHA heartbeat monitors Database servers
    • When Main Database fails - Backup Database sees that and after 10s (default) will take Virtual IP, it is done automatically.
    • When Main Database is back up - Backup Database returns Virtual IP to Main Database and system starts to function in normal work flow (done automatically).
  • GUI server is connected to Backup Database to avoid load on Main Database in normal work flow.

This solution can handle up to 1000 simultaneous calls. Certain amount of calls may vary depending on hardware, codecs used and transcoding. Additional Asterisk servers can be added if larger amount of simultaneous calls is needed.

Complete Redundancy, high performance system with SIP balancer

MOR proxy full.png

SIP balancer for docs.png

Detailed schematic of SIP Proxy solution:

SIP balancer detailed.png

NOTES:

  • GUI is on DB servers
  • Proxy servers share 1 IP managed by Heartbeat
  • DB (Asterisk/GUI) servers share another 1 IP also managed by Heartbeat
  • More Asterisk Nodes can be connected, example with 2 is bare minimum



For more details about SIP Balancer solution click here