So this is a question that I have been asked frequently. I think it is better to put an explanation here and forward everyone.

It is very common to see new VoIP companies startups. But as any startup, the entrepreneurs look for the cheapest option with the best performance and availability. First of all, I must say there is no a 100% fault-free architecture, but we can archive 99.99999% and as many 9's you want. It is all about the money you want to invest.

I will explain an architecture that it can be close to 5 nines, 99.999%. It will depend on the money to implement it fully or just a part of it. Please remember that I am telling you what, not how.

galera-overview.png

MariaDB Galera Cluster is a synchronous multi-master cluster for MariaDB. It is available on Linux only, and only supports the XtraDB/InnoDB storage engines (although there is experimental support for MyISAM - see the wsrep_replicate_myisam system variable).

Starting with MariaDB 10.1, the wsrep API for Galera Cluster is included by default. This is available as a separate download for MariaDB 10.0 and MariaDB 5.5.

MariaDB has one of the best and easiest solutions to do a Master-Master replication: Galera. Galera uses WSREP, which it is responsible for maintaining all the Database nodes in the cluster in sync. This means, after changing one record on node A, it is just a matter of seconds to see the change on node B.

I will talk in this article how I did this configuration using MariaDB 10.1.x. Remember you can install MariaDB under Centos 6 and 7 by using OKay's repository.

When you are a system administrator one of the first needs you need to satisfy is having a monitoring system. This system needs to give notify you when something breaks almost in real-time with information about what it is happening. Fortunately for everyone, we have Nagios. Nagios supports many things, but I will talk in this post only about service and dependencies.

Thanks to Nagios I am able to manage more than 20 VoIP servers without big issues. If something happens, my smartphone starts sending me alerts until I manually stop it.

If you are new to Nagios I recommend you to read the Nagios Core Documentation. I will assume you are quite familiar with it and that you have already a working deployment.

north-america-servers-and-users.png

In this post, I am going to talk about how to configure FreeSWITCH in an active-passive schema. The active-passive will share a floating IP between your switches and when one gets off-line, the passive one will take control over the IP and it will get the load. This article will assume the following:

This is something that happened this weekend. A customer of mine asked a way to save money when someone calls to a DID that is already hosted in the PBX. Currently, in any FusionPBX default installation, when you dial a number it is already hosted in your PBX it will go through your carrier and come back causing you unnecessary costs.

So, there should be a way to avoid this PSTN trip and route the call internally, even if it is inter-tenant. Please note that this is a capability I will include in the LCR for FusionPBX 2 (also know as pseud-enum support), but he couldn't wait, so here is a way to manually work around it.