How do I upgrade my cluster setup?
Make sure you have the latest HA Module and FreePBX framework installed first. You can do that via Module Admin in the GUI or via the CLI.
Then run the "Cluster health check" in Settings --> High Availability --> Manage --> Cluster --> Run --> and make sure All checks passed successfully, or you've taken whatever corrective action it recommends, you can proceed with the updates.
Since the Cluster is based on the FreePBX Distro 10.13.66 or Older, you should always follow the Upgrade Scripts for the FreePBX Distro here. Upgrade Scripts should be run on the Master Server first and, once completed, put the Master Server into standby and upgrade the new Master Server.
Keep in mind the FreePBX Distro is a Open Source project and uses mainly Open Source packages.
The Upgrade Scripts outlined above will upgrade both FreePBX Modules and system RPMs as outlined below for you.
Steps to Upgrade
- Upgrade the current Master Server using the upgrade scripts or Sysadmin Pro by going to the floating IP address, since this IP will always point to the master.
- Go to the High Availability (HA) module in your GUI and make sure it does not ask you to perform any other steps on the main page.
- Click on the "Manage" Section.
- Click on "Verify Cluster Configuration." This will walk through some self testing and healing, and may prompt you to execute some commands if it finds any issues it cannot self heal.
- Put the current Master into standby mode from the HA GUI.
- Log back into the Floating IP address, since you should have been disconnected after the Floating IP address moved to the secondary system.
- Upgrade the new current Master Server using the upgrade scripts or Sysadmin Pro by going to the Floating IP address, since this IP will always point to the current running master.
What happens if I upgrade FreePBX modules on my cluster?
Since upgrading FreePBX modules will upgrade files in /var/www/html/ and write dialplan in /etc/asterisk, all module upgrades will be synced across your cluster. Both of those directories are part of the cluster sync as outlined here.
What happens if I upgrade system RPMs on my cluster?
You should only upgrade system RPMs on your current running Master Server first.
If you upgrade system RPMs on your Slave Server, this can result in issues, since the files in the sync are not mounted and system RPMs can include Asterisk and MySQL packages. Once the Master has been upgraded, then you should force the Master into standby mode, log into the new current Master, and upgrade the same RPMs packages.