Scaling SBC On-Premise for High Availability
Last updated
Was this helpful?
Last updated
Was this helpful?
If your business handles a high volume of WebRTC and MS Teams calls, or if you use an SBC to isolate your PBX, all calls will be routed through the SBC. In such cases, it is recommended to deploy the SBC in a cluster configuration to efficiently manage the call traffic.
As illustrated in the diagram, the PBX is deployed on either a VLAN or a cloud platform. Multiple SBC servers are positioned in front of the PBX to prevent direct access by users.
Servers
Assume we have the three servers with the below IP addresses:
SBC 1: Private IP 192.168.1.11, public IP is: 72.247.113.11
SBC 2: Private IP 192.168.1.12, public IP is: 72.247.113.12
SBC 3: Private IP 192.168.13, public IP is: 72.247.113.13
You will need to create DNS records for each SBC server. The DNS records can be of the following types:
A Record
DNS SRV Record
You can create the following A Records for the SBC servers:
Resolve sbc1.sbc.com to 72.247.113.11
Resolve sbc2.sbc.com to 72.247.113.12
Resolve sbc3.sbc.com to 72.247.113.13
Additionally, you may create records to resolve sbc.com to all three SBC IPs:
Resolve sbc.com to 72.247.113.11
Resolve sbc.com to 72.247.113.12
Resolve sbc.com to 72.247.113.13
Please purchase a wildcard TLS certificate for the domain sbc.com as per the article Certificates for TLS/HTTPS/WebRTC.
Before configuring the cluster servers, please ensure that you have completed the PBX HA installation and configuration on the Main Server by following the guide High Availability Installations on Ubuntu.
PortSIP PBX High Availability (HA) and all associated servers require a consistent and compatible Linux environment.
Supported OS: Ubuntu 24.04 (64-bit)
All servers in the HA cluster must run the exact same OS version as the PBX server.
To ensure consistency and seamless operation across the HA cluster, all SBC servers must meet the following user account requirements:
All SBC servers must use the same username and password as the PBX server.
In this guide, the username pbx
is used as an example. The user account must have sudo
privileges to execute administrative commands.
A minimum of 128 GB of disk space is required. No additional data partition is necessary.
Important: All management commands for extended servers must be executed on the pbx01
node, regardless of whether it is currently the active node.
If you are prompted to choose an option (yes/no), please enter yes.
Run the following command only on the pbx01 node of your HA PBX cluster. The process may take some time—do not interrupt, reboot, or close the terminal during execution.
-a
– Specifies the IP addresses of the SBC servers. Use commas to separate multiple IPs.
Example: -a 192.168.1.11,192.168.1.12,192.168.1.13
-i
– Specifies the SBC image version to deploy.
Example: -i portsip/sbc:11
After successfully deploying the SBC servers, you can access their web portals using the URLs below:
SBC 1: https://sbc1.sbc.com:8883
SBC 2: https://sbc2.sbc.com:8883
SBC 3: https://sbc3.sbc.com:8883
Once the SBC servers have been successfully deployed, follow the Configuring PortSIP SBC for WebRTC guide to complete the setup.
Please keep the following points in mind during configuration:
PBX Address: When specifying the PBX information in the SBC configuration, use the PBX HA Virtual IP address as the PBX IP.
TLS Certificate Settings: When uploading TLS certificates:
Set the TLS Domain to sbc.com
.
Enable the This is SBC Web Domain Certificate option.
Web Domain Configuration: In the Web Domain field, enter: sbc.com
.
You can access the WebRTC client using this URL: https://sbc.com:10443/webrtc.
Important:
All management commands for extended servers must be executed on the pbx01
node, regardless of whether it is currently the active node.
The following operations are supported for managing SBC servers:
start
– Start the servers
stop
– Stop the servers
restart
– Restart the servers
rm
– Remove the installed servers
To manage a specific SBC server instance by its IP address, use the -a
parameter.
The following commands apply actions to all SBC servers:
Start All:
Stop All:
Restart All:
Remove All:
All the below commands must be performed on the pbx01 node, even if it is not the current active node.
First, please ensure you have upgraded the PBX HA as per this guide: Upgrading High Availability Installation.
To upgrade all SBC servers, run the following command on the pbx01
node. The process may take some time—do not interrupt, reboot, or close the terminal during execution.
This command will automatically apply the latest updates to all configured SBC server instances.