If you haven't already done so, please read the components guide.
Enswitch is very flexible, and allows a wide range of architectures. Most components communicate with other components using IP networking and can be run on different machines, with redundancy, failover, and load balancing where appropriate.
Since there are many choices, we will discuss this with you when planning your system, and we're open to your input on this. Here are some common architectures to consider:
Single machine
This is most suitable for small systems of up to 250 users, typically as a PBX replacement, or for ITSPs to install at their larger customers' premises. A sample system is:
Two machine cluster
For smaller carrier systems of up to 1000 users, or for those testing the waters before expanding to a larger system, 2 machines are suitable:
- One machine runs MySQL, OpenSIPS, and the web interface.
- The other runs Asterisk, call routing, and features such as voicemail, hunt groups, conferencing, etc.
This system can be expanded by adding more Asterisk machines. A sample cluster is:
Seven machine cluster
For medium sized carrier systems, and as a foundation for larger systems, a 7 machine cluster is suitable, with 2 database and web machines, 2 Asterisk machines, and 2 OpenSIPS machines, and a SAN or NFS device.
This cluster has full redundancy (assuming a redundant SAN device), and any single machine can crash with only a few seconds outage. This system can also be easily expanded; typically the Asterisk machines will run out of capacity first, and more can be added on the fly without affecting service.
A sample cluster is:
Larger systems
Systems beyond 7 machines would typically follow the same architecture as above, and can include:
- More Asterisk machines in parallel to increase call capacity.
- Redundant voicemail storage using DRBD and GFS, or similar.
- Dedicated web servers.
- Dedicated machines for features such as conferencing.
- Separate backup storage for the database and voicemail files.