I need to move a few dozen FreePBXen with some commercial modules running in individual
VMs to a new data center.
I’m trying to work out a plan to move the PBXes to the new data center in a way that will
be transparent to the endpoints, or at the very least with the absolute minimum of
downtime.
Some of the installations are rather old, and there’s a handful of peculiarities on each,
so the typical FreePBX backup/restore process hasn’t gone smoothly, at least in our
tests.
My current train of thought is to put a clone the VMs in the new data center and use
Kamailio to route the SIP traffic to the new servers/IPs. I’ve never used it before, so I
may be barking up the wrong tree, but it /appears/ to do what I’m suggesting.
If so, I’m thinking I can install Kamailio on each VM, point it to the local
asterisk/FreePBX initially, and clone the VM. Then, after the new instance is up and
running, point Kamailio on the original VM to the cloned VM's asterisk, after which I
can make appropriate DNS changes.
Another option would be to stand up a single Kamailio server and redirect SIP traffic
destined for individual asterisk servers to it at the router.
Endpoints are mostly Yealink, and I’m not sure if they’ll feel the need to restart when
the registration/SIP server’s IP changes, but a quick bounce when not in use isn’t the end
of the world. I’d very much like to avoid having to send an update to each phone manually,
but I can script a SIP NOTIFY if required.
Anything stupid, wrong, ignorant, or just smelly about this tactic?
Or, for that matter, any other suggestions?