What is needed to get PBXware up and running?
Server Hardware
Hardware Requirements for standalone PBXware installations
Type | Minimum | Suggested |
---|---|---|
CPU | Quad Core x86 CPU1 | Quad Core or greater Xeon CPU |
RAM | 2 GB | 4 GB |
Storage | HDD 250 GB | SSD 250+ GB |
NIC | 1 GB NIC | 1 GB NIC with OOBM on a dedicated NIC |
Please note, that if the server will operate from a private LAN IP, the firewall must be set up to open/forward some ports. Visit our HOWTO Port Forwarding When System Behind A Router/Firewall for the full list of ports.
The above hardware requirements should be adequate for systems with low to moderate usage, however, due to the large number of variables like the number of active extensions,number of simultaneous calls, number of ring groups/enhanced ring groups, call recording, transcoding, etc., the only way to establish if specific hardware would meet partners' demands is to do extensive testing or deploy hardware that exceeds our suggested hardware requirements.
In addition, partners should make sure to consider the system's future expansion as every future hardware upgrade will cause system downtime and possible service disruption to their users, so certain hardware overhead is strongly recommended for every standalone installation.
If partners have any doubts about the hardware requirements for their next PBXware deployment they should contact us before making the purchase and we will be glad to provide the necessary assistance to determine the best option based on their current and future demands.
Note: The only officially supported PBXware OS platforms are Gentoo and Artix (Arch-based) Linux distributions.
As you may or may not know, PBXware is a platform composed of dozens of daemons, individual services, and small applications, integrated and consolidated into a single package that performs multiple services that PBXware offers to the end users and administrators.
Each individual service and its supporting applications consume resources and theoretically have their own limitations which may affect the final capacity of your PBXware instance. The goal here is to elaborate and potentially define some of them.
The most common questions we are asked by our partners are:
Unfortunately, there is no simple answer to these questions. Many factors can determine the capacity of your build, and they all depend on how you use the software.
Let's take a look at some of the most common limits and how to mitigate them.
Asterisk limitations are a well-known issue. To ensure the stability and reliability of the PBXware system, it is imperative to adhere to the extension count limit. The specific limit may vary depending on the usage patterns and the intensity of feature utilization. For example, BLFs are something that can severely impact the performance of core asterisk. If you have a lot of extensions, monitoring other extensions via BLF, that would generate a lot of subscribe/notify packets that the asterisk needs to receive, process, and react to in a very short period of time. Another factor that may impact the asterisk, are channel multiplication features such as large ring groups, conferences, looping group hunts, large queues and similar. Basically, any feature that turns a single call into multiple calls may add additional load to the core asterisk if used improperly or excessively. That is why, we strongly advise that each PBXware instance must not exceed 1200-1500 extensions. Instances exceeding this limit are inclined to experience issues, due to overload, that can not be supported by our team.
To address this limitation, you should create a new PBXware instance on the SERVERware platform once the existing instance reaches approximately 1200-1500 extensions. This approach allows you to distribute the load and add new partners to the new instance, maintaining system stability and performance.
RAM memory Typically, PBXware does not require too much RAM to function properly, but we generally recommend having 4GB or more for standalone instances. If your PBXware instance is running under SERVERware, you can start with less RAM and increase later if needed through the VPS management. Call Center instances are an exception here as they rely on the ClickHouse database for its reporting features, and because of it, we recommend having 10GB or more for busy Call Center instances.
CPU-intensive operations can heavily impact the capacity of your hosts. One of the main things that can affect your CPU performance is codec transcoding. To minimize this, we recommend always looking to ensure that both peers in a call support the same codec, which would allow asterisk to do RTP pass-through without needing to transcode the call, hence lowering CPU time requirements for the build. Please keep in mind that using Call Recordings will impact this irrelevant of the RTP pass-through due to the fact that for each call, the audio streams are mixed and transcoded into mp3/wav on the fly which requires CPU time.
Contact Center vs. Muti-Tenant instances behave much differently in production. Although call center VPS's usually operate with between 10 and 100 extensions, compared to 1000+ extensions on a CC system, they often generate a much heavier load on the resources than the MT edition. This is because most call centers are intended to keep their agents on the call all the time, and often generate extreme amounts of calls per hour. So if you calculate in the sheer amount of database reads/writes, statistics generating and tracking through ClickHouse , and the fact that most call centers require all calls to be recorded, you can expect that a busy call center can consume quite a lot of your resources, even with small extension counts.
I/O Operations and storage bandwidth can be a bottleneck if your PBXware instance is running on a platform with limited storage performance. On a busy PBXware system that generates a lot of calls, the MySQL database is going to be very busy, so having storage with sufficient IOPS is a must. In addition to this, having a lot of calls being recorded will also require fast-performing storage. We recommend having a minimum 20MB/s-40MB/s write capacity per PBXware instance.
All of this, bundled with various other services that allow PBXware to deliver features like Chat, CRM integration, Meetings, etc, the numbers can vary depending on how the PBXware instance is configured and utilized.