Backup and Redundancy
Backup and Redundancy
Ensuring the reliability and recoverability of your Vodia PBX is crucial. This document outlines best practices for backup and redundancy, catering to various hosting environments.
Best Practices for Backup
- Ensure adequate storage: Verify that your destination server has enough space, especially if backing up on the same server. Ideally, use a remote location for backups.
- Domain names over IPs: Use domain names (FQDNs) for DID routing rather than IP addresses. This applies to IP gateway trunks and SIP Proxy trunks.
- Phone configurations: Ensure phones use domain names, not IP addresses. More details can be found here.
- DNS configuration: If hosting multiple domains on a single server, set up one A record for the master domain and use CNAME records for the rest that point to the master domain.
- DNS failover: Use a script or playbook to trigger DNS changes during a failover event. Alternatively, services like Route53 (AWS) offer built-in DNS health checkers, usually targeting SIP port 5060 is a good idea.
- Firewall whitelisting: If whitelisting the PBX IP on customer firewalls, use the PBX DNS instead of IP addresses.
Backup Options by Hosting Type
Vodia PBX Hosted on Cloud Providers (AWS, Azure, Google Cloud, Digital Ocean)
- Snapshots: Most cloud providers support daily snapshots — a simple rollback option for PBX instances.
- Cross-region backups: Enable cross-regional backups to keep PBX online even if a region goes down.
- Failover: In case of failover to a secondary virtual machine, update DNS records (manually or programmatically).
- Licensing: Ensure secondary servers have the necessary PBX licenses.
Vodia PBX Self-Hosted on Virtualization Platforms (VMware, XCP-ng, Proxmox)
- Snapshots: Rolling snapshots allow you to restore PBX configurations easily.
- Virtual machine backups: Use built-in VM backup options like full, delta or continuous backups or tools like Veeam.
- Failover: If maintaining the same IPv4 settings, no license reactivation is needed. If IP changes, update DNS and confirm licenses for secondary servers.
Vodia PBX Self-Hosted on Bare Metal Servers / File System Level Backups
-
Working directory: Vodia PBX stores all configuration data in its working directory — no need to back up multiple databases or modules.
Linux OS
The following outlines the various procedures for backing up the PBX working directory within a Linux operating system.
-
Backup script: Use the official Vodia backup script to backup your PBX working directory. For offsite storage, the compressed backup files may be shipped to a remote location.
-
Rsync: Sync the working directory, In these examples, 1.1.1.1 represents the production PBX server. We're copying the working directory to the secondary server using rsync. Execute these rsync commands from the secondary server.
-
Full backup usage example:
rsync -avz --delete root@1.1.1.1:/usr/local/pbx/ /usr/local/pbx/
-
Exclude large folders like CDRs example:
rsync -avz --delete --exclude 'cdr/*' --exclude 'cdri/*' root@1.1.1.1:/usr/local/pbx/ /usr/local/pbx/
-
Limit bandwidth (1000 KBps) example:
rsync -avz --delete --exclude 'cdr/*' --exclude 'cdri/*' --bwlimit=1000 root@1.1.1.1:/usr/local/pbx/ /usr/local/pbx/
You can automate PBX working directory synchronization by scheduling rsync with cron
-
-
Rsnapshot: Create daily snapshots of the working directory. You could run rsnapshot on the production or secondary server.
Below is an example of rsnapshot on ubuntu 22.04 LTS, you can find more information on rsnapshot here.
-
Install rsnapshot:
sudo apt install rsnapshot
-
Configure snapshots in
/etc/rsnapshot.conf
, you need to edit the lines below as per your requirements:snapshot_root /usr/local/pbx-backup/
retain daily 14
backup /usr/local/pbx/ localhost/ -
Run a daily snapshot (can be scheduled using cron):
rsnapshot daily
-
Windows OS
The default working directory is usually located at:
C:\Program Files\Vodia Networks\Vodia PBX
. Copy the entire folder to another location — preferably a separate drive or server. -
Other Backup Options
Domain-Level Backup
- Log into the PBX.
- List all domains.
- Click on the
Download
button next to each domain's name (downloads a.tar
file). - To restore:
- Go to
Create domain
. - Name the new domain.
- Upload the
.tar
file.
- Go to
PBX GUI Backup (IO and IOP Devices Only)
- Available exclusively for IO and IOP devices.
- Backups happen over HTTP — note that files larger than 1MB may fail on other PBX types.
Following these practices will help ensure your Vodia PBX setup is resilient, secure, and easy to restore in the event of an issue.