Migration FreePBX to new host

Hi there,

I have a virtual machine running FreePBX version 14.0.13.28 on VMware ESXI 6.7 and I need to migrate this VM to a new ESXI host. I wanted to check in here to see if you guys had any recommandations on how to do this.

I have seen a lot of people recommending using backup and restore, but from what I understand this would also mean upgrading to 16 which is not really needed in my case as we’re only trying keep this server alive until a complete phone system change in a year or two. I was thinking of using VMware vConverter to copy the VM to the new host.

I have also seen some stuff about deployment ID for activation, so please do let me know what is needed to not lock myself out of both systems :wink:

This is really a question about how to use vmware ESXi, not sure how much help you’ll get here as it’s not really a question about administrating FreePBX.

I would check with vmware to see what sort of VM migration paths between esxi hosts are supported by them in your environment specifically as I am sure it depends what options you have available to you based on whatever licensing you have purchased from them and in place for your servers.

Hi Igor, thank you for your answer.

I guess my question is more about what i will need to do in the FreePBX VM / GUI if I do migrate the VM to the new host. I am pretty capable of moving a VM from a host to another, but if it’s simply better to create a new FreePBX VM in the new host and use the backup & restore module, i’ll do it that way.

If you are going from esxi to esxi it sounds to me like you wouldn’t need to do anything inside of the VM. Just migrate to new host and turn on the VM on the new host.

Your networking will likely change if your network adapters get new MAC addresses. In that case, you will have to make sure your new network adapters are configured properly. If you are retaining MAC addresses, you shouldn’t have to do anything.

This could very well be the case, I just know for ShoreTel phone systems, for example, the virtual machine needs to have the same MAC Address or else activation fails and you have 30 days to register/generate a new system key.

Knowing this warrants me to be very careful about phone system migrations and i haven’t had to migrate a FreePBX yet.

I assume you’re using local storage on each ESXi host (rather than shared storage via NFS etc.). If so, you should be able to do the following;

  1. ‘Power Off’ the VM on the original ESXi host.
  2. ‘Un-Register’ the VM on the original ESXi Host. This will remove the VM from the inventory of that host (the underlying VM folder/files remain).
  3. Move underlying VM folder/files to the storage location of the new ESXi host (If you’re using shared storage - ie. where the underlying VM folder/files are visible to both ESXi hosts - then no need to do this).
  4. ‘Register’ the VM on the new ESXi host (by navigating to its VMX file). This will make the VM appear in the Inventory.
  5. IMPORTANT - When ‘Powering On’ the migrated VM for the 1st time, ESXi will detect that the VM came from another host & prompt/ask you whether you’ve ‘moved -or- copied’ the VM - If you answer ‘MOVED’, then I believe the MAC Address of the VM will remain the same as before & ‘shouldn’t’ cause any re-licensing issues. This is definitely the case for Windows VMs, I’ve not personally tried it with FreePBX.

PS. It should go without saying, make sure you have a backup of the VM from the original ESXi host BEFORE doing any maintenance task such as this.

PPS. Although FreePBX v16 presents the MAC Address as the activated ‘Machine Id’ that’s tied to your Deployment (see ‘fwconsole sa info’ from the CLI), I’m not entirely sure what Hardware components were responsible for the ‘Zend Id’ which was used in previous versions of FreePBX for Deployment Activation. As you mentioned being FreePBX v14, you might want to look that up to help determine if/whether the older Zend Id Activation will trip you up here.

Why you are not doing from ESXi side Export to .ovf and .mf files?
After import back (.OVF) to new ESXi Server you have to re-activate with same ZEND_ID your FreePBX.

If it asks to reactivate it’s simple as connecting it to the same Deployment that’s already in place. Takes a few minutes to complete.

Worst case, Backup FreePBX and if the esxi move doesnt go as planned, spin up a new VM, install FreePBX and restore the FreePBX backup… ive done it many times…