M2 Network Architecture
This page shows some ways how M2 system can be used. Examples are from real implementations.
On all implementations listed below, it's recommended deploying Core and DB servers in the same datacenter. This will ensure a stable system functioning.
Even though it's possible to deploy these elements in different locations, but such implementations may cause many issues, related to delays between different networks.
For MOR 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
Up to 1000cc
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.
2 Server Redundant High-Availability Solution
Up to 500cc
This is the most popular solution because it is fully redundant and most stable.
3 Server Non-High Availability Solution
Up to 3000cc
Not-recommended solution because of the risk to have main components on one server.
4 Server High-Availability Redundant Solution
Up to 3000cc
The recommended solution for High-Availability, Redundant System.
Complete Redundancy, high-performance system with SIP balancer
Up to 10000++cc, 1000++ CPS
- GUI is on DB servers (or better in the separate server)
- Proxy servers share 1 IP managed by Heartbeat
- DB (Core/GUI) servers share another 1 IP also managed by Heartbeat
- LinuxHA heartbeat monitors Database servers
- If one of the Core servers fails, SIP balancer routes calls via remained Core servers.
- More Core Nodes can be connected, example with 2 is a bare minimum
- 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 the normal workflow (done automatically).
- GUI server is connected to Backup Database to avoid load on Main Database in the normal workflow.