Strategy to upgrade Windows 3CX v16 to v18

Status
Not open for further replies.

telis

Premier Customer
Advanced Certified
Joined
Aug 13, 2007
Messages
238
Reaction score
65
I have a customer with 3CX V16 and I want to migrate them to V18.

I have looked at the config and, rightly or wrongly, the config files given out to the SIP endpoints include the local IP address of the current 3CX server, so I'll want to preserve the IP address,

I have built a new windows server and downloaded the 3CX installer and taken a full backup for the purposes of testing (which takes 35 mins and is a 6.5GB file). Because the IP address of this new server needs to be the same as the old server, and because I don't want the new server to be activated and therefore deactivate the old server I disconnected the NIC of the new server. However if I do this I cannot proceed because the installer cannot resolve the activation servers:-

DNS resolution failed: downloads.3cx.com, activation.3cx.com Fix DNS problems and press 'Next'

Is there anything I can do to complete a test upgrade or do I just have to switch off the old server, reconnect the NIC of the new server and do a live install and hope for the best?

(This also means I won't be able to keep the phone system up whilst I do the restore, which presumably takes a long time).
 
The only way to test your system get a new license key to test (free license) but the server will have a different internal IP address

What you can do, backup the existing 3cx server - move the backup to a location that can be accessed by the new server.

Switch off the old server.

Change the IP address of the new server, to the correct IP.

Install 3CX, and select restore from backup during the installation. Restoring 6GB may take some time.

If any thing does not work , you have 30 days grace to go back to the old server without any licensing issues.
 
The only way to test your system get a new license key to test (free license) but the server will have a different internal IP address

What you can do, backup the existing 3cx server - move the backup to a location that can be accessed by the new server.

Switch off the old server.

Change the IP address of the new server, to the correct IP.

Install 3CX, and select restore from backup during the installation. Restoring 6GB may take some time.

If any thing does not work , you have 30 days grace to go back to the old server without any licensing issues.

Thanks for replying.

Can you get a test license key for any edition? I'd need 32SC Enterprise.

Also if I use a test key won't that force me to use a different FQDN? Several users are using the 3CX App and I think that uses the FQDN to connect to the server.

It's shame the upgrade scenario isn't covered in the docs.
 
Thanks for replying.

Can you get a test license key for any edition? I'd need 32SC Enterprise.

Also if I use a test key won't that force me to use a different FQDN? Several users are using the 3CX App and I think that uses the FQDN to connect to the server.

It's shame the upgrade scenario isn't covered in the docs.
The upgrade scenario for Windows is easy:

- Be on latest v16.
- Full backup, move it to a folder outside 3CX ProgramData.
- Uninstall v16, reboot and then install v18 (you'll need WS2016 and above).
- Restore the backup during setup wizard.

And you don't need the 32SC to test the upgrade. Simply replace the key once ready. A free 4SC will work fine for testing.
 
The upgrade scenario for Windows is easy:

- Be on latest v16.
- Full backup, move it to a folder outside 3CX ProgramData.
- Uninstall v16, reboot and then install v18 (you'll need WS2016 and above).
- Restore the backup during setup wizard.

And you don't need the 32SC to test the upgrade. Simply replace the key once ready. A free 4SC will work fine for testing.
There is no rollback in this plan. Maybe I don't need rollback for 3CX but it's something that I would usually do with other software. Also there is more downtime than I'd want. If this is the best that can be done then I'll do it - with the exception that I'll keep the old server around.

I suppose if I have the old server I can somehow reactivate it if needed.
 
Hi @telis,

I just want to chime in and mention to anyone reading and contemplating, that we advise against having two machines running with the same License key at the same time as it can lead to being blocked. Thus using a test key is the best way, then simply switching when the testing is complete.
 
  • Like
Reactions: Evolute IT
Hi @telis,

I just want to chime in and mention to anyone reading and contemplating, that we advise against having two machines running with the same License key at the same time as it can lead to being blocked. Thus using a test key is the best way, then simply switching when the testing is complete.
OK, if I use the test key it won't be on the Enterprise. Will the CFD apps we have work on a test key?

Any idea how I handle the IP address issue?
 
There is no rollback in this plan. Maybe I don't need rollback for 3CX but it's something that I would usually do with other software. Also there is more downtime than I'd want. If this is the best that can be done then I'll do it - with the exception that I'll keep the old server around.

I suppose if I have the old server I can somehow reactivate it if needed.
Downtime is about 15min (since the system still runs during the backup.) Schedule a time and do it.

As for your rollback, just take a backup of the machine/VM itself? This way, you restore that in the worst case scenarios.

Your CFD apps will need to be updated for v18 (update CFD on PC, open the project and rebuild) as well as any custom templates or CRM templates.
 
Downtime is about 15min (since the system still runs during the backup.) Schedule a time and do it.

As for your rollback, just take a backup of the machine/VM itself? This way, you restore that in the worst case scenarios.

Your CFD apps will need to be updated for v18 (update CFD on PC, open the project and rebuild) as well as any custom templates or CRM templates.
Part of the reason to use a new server was to have a clean install of the latest OS.

That said maybe I should separate this into two jobs.

1. Checkpoint the VM, backup 3CX, move the backup file out of the folder that gets deleted (3CX should really change this location), uninstall V16, install V18, do the restore. If the CFD apps don't work (or even if they do) recompile them. Any problems go back to the intial checkpoint. (Since the back takes 35 mins presumably the restore takes 35 mins).

Then at some later time when it's all working.

2. Create a new VM with clean OS install. Backup 3CX, copy the backup file to the new VM, switch off the old VM, set the IP of the new VM to that of the old VM, install 3CX on the new VM, restore, reactivate.
 
  • Like
Reactions: Evolute IT
Part of the reason to use a new server was to have a clean install of the latest OS.

That said maybe I should separate this into two jobs.

1. Checkpoint the VM, backup 3CX, move the backup file out of the folder that gets deleted (3CX should really change this location), uninstall V16, install V18, do the restore. If the CFD apps don't work (or even if they do) recompile them. Any problems go back to the intial checkpoint. (Since the back takes 35 mins presumably the restore takes 35 mins).

Then at some later time when it's all working.

2. Create a new VM with clean OS install. Backup 3CX, copy the backup file to the new VM, switch off the old VM, set the IP of the new VM to that of the old VM, install 3CX on the new VM, restore, reactivate.
That would probably be a good idea.

As long as the current OS is 2016 and above, v18 will be able to install.
 
Hi @telis,

Honestly, I think the best idea is to just test a v18 setup so you're happy, but not from your backup. A clean install would be best. The problem here is you can't create a test machine using the same FQDN. So you can do your backup and reinstall to v18 but it won't be a concurrent test machine, it'll be your primary.

To create a test machine: Create a POC key from the old portal. After installing the test key, go to your Partner Portal, find the key in your assigned keys and click 'More' which will allow you to upgrade the key to a POC key - which will give you an option of PRO / ENT and the amount of SC you require for the trial. For this test machine, use a different FQDN, IP and MAC address.
 
  • Like
Reactions: Evolute IT
Hi @telis,

Honestly, I think the best idea is to just test a v18 setup so you're happy, but not from your backup. A clean install would be best. The problem here is you can't create a test machine using the same FQDN. So you can do your backup and reinstall to v18 but it won't be a concurrent test machine, it'll be your primary.

To create a test machine: Create a POC key from the old portal. After installing the test key, go to your Partner Portal, find the key in your assigned keys and click 'More' which will allow you to upgrade the key to a POC key - which will give you an option of PRO / ENT and the amount of SC you require for the trial. For this test machine, use a different FQDN, IP and MAC address.
Or can use the backup BUT without FQDN/license so at least he can test the actual setup.
 
  • Like
Reactions: VasilisV_3CX
Why not use debian version of 3CX, and remove all the hassle with the windows version - MS patch management, antivirus, upgrade of 3CX (where you have to backup, uninstall and reinstall),

Debian version is install and leave it running in the corner
 
  • Like
Reactions: Evolute IT
This is good if he doesn't have registration based SIP trunks, to avoid confusion I'd just try it out because at this point it's a formality, he has to upgrade to v18 sooner or later.
 
Hi @telis,

Honestly, I think the best idea is to just test a v18 setup so you're happy, but not from your backup. A clean install would be best. The problem here is you can't create a test machine using the same FQDN. So you can do your backup and reinstall to v18 but it won't be a concurrent test machine, it'll be your primary.

To create a test machine: Create a POC key from the old portal. After installing the test key, go to your Partner Portal, find the key in your assigned keys and click 'More' which will allow you to upgrade the key to a POC key - which will give you an option of PRO / ENT and the amount of SC you require for the trial. For this test machine, use a different FQDN, IP and MAC address.
OK, but what am I then testing? I'm not validating my existing configuration will work because I'm not using it. All I can then test is the CFD apps I suppose. I mean I could test that the snom endpoints work, but presumably you have tested them.
 
Hi @telis,

If your SIP Trunks aren't registration based, go ahead and create a backup the way @ConceptsWeb mentioned, install using a new FQDN and trial license as I mentioned above:

Or can use the backup BUT without FQDN/license so at least he can test the actual setup.
 
  • Like
Reactions: Evolute IT
Hi @telis,

If your SIP Trunks aren't registration based, go ahead and create a backup the way @ConceptsWeb mentioned, install using a new FQDN and trial license as I mentioned above:
Even if the SIP trunks are register-based, disable them before backing up and renable them. This way, on restore, they'll be disabled.

If IP-based trunks, it doesn't matter.
 
  • Like
Reactions: VasilisV_3CX
Why not use debian version of 3CX, and remove all the hassle with the windows version - MS patch management, antivirus, upgrade of 3CX (where you have to backup, uninstall and reinstall),

Debian version is install and leave it running in the corner
We have less expertise in Debian. Currently we also have a sneaky (and very unsupported) app on the 3CX server that uses IIS with integrated windows auth to display people's Voicemail PINs so they can log in to their hotdesk extension so we'd have to come up with another solution for that (this should be available in the 3CX client!). Maybe next time :)
 
We have less expertise in Debian. Currently we also have a sneaky (and very unsupported) app on the 3CX server that uses IIS with integrated windows auth to display people's Voicemail PINs so they can log in to their hotdesk extension so we'd have to come up with another solution for that (this should be available in the 3CX client!). Maybe next time :)
That app could be replaced by something else. I'm guessing it uses the CCAPI, but there are ways to do it without it.
 
Status
Not open for further replies.

Forum statistics

Threads
111,974
Messages
590,083
Members
164,901
Latest member
Silent_Guru