The following documentation will guide you through the process required to successfully move 3CX Phone System v12 Cloud Server tenants to v14 Virtual PBX Server, without changing the respective SIP Ports that are already assigned to the existing v12 cloud tenants.
To upgrade v12 Cloud Server to 3CX Phone System Virtual PBX Server and maintain each tenant / instance assigned sip port number the following steps must be completed:
- Step 1: Install the Required Prerequisites.
- Step 2: Backup and Export.
- Step 3: Preparing the Restore.
- Step 4: Restoring Instances to v14 Virtual PBX Server.
- Step 5: Re-provisioning Phones and Gateways.
Note: The below documented procedure is currently under review by the development team. Preliminary tests have been successful proving that this is a valid option to migrate from V12 3CX Cloud Server to the V14 3CX Virtual PBX Server.
Step 1: Install the Required Prerequisites
In order to migrate all instances from V12 to V14 SP2 or higher and preserve their respective sip port numbers follow this steps:
- Ensure that all Instances for the V12 Cloud Server runs on the latest service pack (V12 SP6.2 )
- Download the BulkBackup140.zip,
- Extract the ZIP on the desktop of the 3CX Virtual PBX Server
Step 2: Backup and Export
Log in to the existing v12 Cloud Server and perform a backup using the Backup and restore tool, choosing to backup all the tenants. Keep a note of the order of the tenants as shown in the image below. For example, stefant1 is the first tenant (instance) using sip port 5060 followed by tomt2 using sip port 6060 and so on. The main goal will be to restore the tenants on the new V14 3CX Virtual PBX Server with the same sip ports to simplify the transition.
Once all tenants have been exported into your selected folder, copy the files to the new 3CX Virtual PBX server.
Step 3: Preparing the Restore
The ZIP file name (shown above) plays an important role when restoring to V14. Assuming the installation of the V14 3CX Virtual PBX was made for the FQDN “contoso.com”. The self-signed or purchased certificate, must be a wildcard certificate in order to cover all instances in form of “*.contoso.com”.
The ZIP file name will define the name in front root domain. In this case “stefant1.zip” will become bound to the FQDN “stefant1.contoso.com” and “tomt2″ will become” tomt2.contoso.com”. However if you like you can alter the instance name now by simply renaming the ZIP file to desired name of the V14 instance.
Therefore we rename
- stefant1.zip -> stefan.zip (will become stefan.contoso.com)
- tomt2.zip -> tom.zip (will become tom.contoso.com)
and so on.
NOTE: The zip file name must contain ONLY lower case letters.
Restoring the instances in order, as they have been in the V12 3CX Cloud Server will ensure that the old tenant stefant1 (now stefan) will still use the sip port 5060 and tom will continue to use the sip port 6060 as they have been before. This simplifies the migration of the endpoint to the new server. In order to archive this, use the provided “RestoreV14.zip” from the ZIP bundle you have downloaded before, then copy the stefan.zip into the folder instance1 and tom into folder instance2, ect…. The folder structure is very important. Ensure that the structure is RestoreV14.zip -> instance1 -> stefan.zip
-> instance2 -> tom.zip
-> and so on
Note: You can NOT leave any instances out or a folder empty as it must consecutively increment until you have mapped all tenants into the new instances. The sample “Restore V14” contains folders for up to “instance 11”. You may extend the folder structure for up to instance 24 if you require more. If you have less instances to migrate remove the unneeded instances folders from the ”RestoreV14.zip”.
Step 4: Restoring Instances to v14 Virtual PBX Server
Once the restore is completed you can launch the “3CX Virtual PBX Manager”, from the servers desktop, and make sure all instances have been restored in the correct order.
Now you can log in to each instance using the FQDN with the username and password which was assigned at the time the installation of the “old” tenant.
Note: SysAdmin Account has been deprecated in V14 3CX Virtual PBX and can no longer be used.
Step 5: ReProvisioning Phones and Gateways
In V12 3CX Cloud Server you used to access the management console by typing:
Where [tenant-name] in our case used to be “stefant1”. The DNS structure has now been changed and the client must now access the re-named “stefant1” to the now named “stefan” using the following format:
Therefore the new DNS entries must be created to reflect the new setup in your external DNS configuration. See the following guide for an example of how to do this:
Note: The IIS webserver strictly binds to the instance name and will NOT listen to its IP or anything else other than what is defined by the name of the instance!
Reprovisioning 3CXPhone Clients
To reprovision 3CXPhone clients simply re-send the welcome email to all of your extensions and import the configuration file from the email. This will update the 3CXPhone config and the client will register to the new 3CX Virtual PBX Server.
NOTE: For 3CXPhone Clients to work with v14 you have to install the new 3CXPhone for Windows, MAC, iOS and/or Android. V12 Clients will NOT work.
To reprovision PSTN Gateways open the web interface of the PSTN Gateway or ATAs and update the IP Address to point to the new sip server. As PSTN Gateways are mainly used over VPN connections, use the internal IP address of the new 3CX Virtual PBX Server.
For all provisioned IP phones, regardless of the provisioning type (local lan, stun or via SBC), copy the contents of the “provisioning sup dir” from the new 3CX Virtual PBX Server (files only not folders) and copy them to the old 3CX Cloud Server replacing the provisioning files for each tenant / instance one by one.
Note: Make sure you backup the old provisioning files first and move them to safe place.
For example, for the tenant 1 “stefan” which used to be the first tenant and is now the first instance – copy the files from:
New Virtual PBX Server:
Old Cloud Server:
Now power cycle the IP Phones. Do NOT access the web management console of the old 3CX Cloud Server, as this would overwrite the files you just copied.
Once the phones have restarted they will connect to the new 3CX Virtual PBX Instance and you can safely shut down the old server.
V14 3CX Virtual PBX Server requires the new updated SBC version. For updating 3CX SBC to the latest version, for both Windows and Raspberry PI, please see the following guides:
- Installing 3CX Session Border Controller for Windows
- Installing 3CX SBC Session Border Controller for Raspberry Pi.
Once you have updated your SBC installations, changed the IP Address to point to the new server and configured the FQDN accordingly, phones behind an SBC will start to work immediately however without the steps above the IP Phones would still update their configuration for the old Cloud Server.