Today most enterprises have something working in the cloud and even financial institutions are migrating their applications, it seems that the cloud will be with us for a long time.
But which architecture will rule? Multi tenant or multi instance?
It’s enough to say that unified communications landscape is changing, customers needs and require more complex voice communications. The demands on their PBX platform are increasing: Companies need to know who’s calling with CRM integration. They require integrated video conferencing and customized call scripts. Staff want to work from anywhere. And added to that there is an increased security concern – with the PBX in the cloud, how can i be sure no one touches my data, how can I retain control?
Back in the 90’s, when it was .COM bum, hundreds of websites were hosted on one machine. One website adding a simple PHP application could bring down the whole server. Soon companies demanded their own dedicated server. When the first cloud services saw the light for first time, those systems were designed as a centralized host, sharing the same DB, storage and network.
Multi Tenant PBXs share between clients the same software or application copy. Even have their data stored in one single and shared database. The service provider have the advantage to only support one and centralized system. But also there are some disadvantages:
- Mixed information, data may be isolated between tenants but at the end it’s living in the same physical drive. A regulation problem in Government, Health and Financial Institutions
- Hardware and Software support is higher due to complex architectures
- Any action affects all customers, updates and availability are stuck to every multi tenant user
In the PBX World, as well as many others IT environments, Multi Tenant is dead.
In contrast, a multi instance architecture gives every client his own DB, which means it’s possible to mix data. Deploying an instance per client also allows vertical growth and practically infinite. Another advantages:
- Customers are in no way affected by what happens on other PBX instances.
- Customer’s data is much more secure, completely separated from other customers.
- Advanced features such as CRM integration, Custom scripts can be seamlessly supported.
- No complex firewall/port forwarding setup – VoIP providers, provisioning will work out of the box.
- Customers requiring hotel features or special provisioning settings can be supported.
- Customers running PBX in the cloud no longer need to wait for a “multi-tenant” version.
- You can give the customer control of their PBX and data.
- Leverage the many data center providers that have professional hosting infrastructures for deploying and managing Linux VPS instances. And at a very low cost.
- OVH – Linux VPS starting at $3.50 monthly (https://www.ovh.com/us/vps/).
- Google Cloud – Starting at approximately $12 monthly (depends on data usage).
- Pretty much any data centre running Openstack & KVM
- Look for Debian 8, 1+ core and 2 gigabyte memory
Multi tenant is “Out”
- New cloud platforms such as Openstack make it easy to manage large numbers of instances.
- Container technology will further reduce the operating system overhead.
- No need to deploy 25 instances at a time. Deploy instances when needed, one by one.
- Automated update features (in development) will reduce per instance admin further.
- Leverage existing data centers for running underlying infrastructure.
Deploying Elastix 5 in the cloud – an example
For this example we have chosen to use Google Cloud & OVH. Google Cloud Compute engine is available as a trial to anyone with a Google Account. OVH has low cost Linux VPS available. In theory it is possible to use any Debian VPS which uses KVM/Hyper V/VMware for virtualization and is correctly configured. Follow the guides below to setup 3CX in the cloud on these providers: