Our web site and email is currently hosted by a shared hosting service. We'll be moving both of those to a VPS soon, and I'd like to make sure that we experience as few delays as possible, and no lost email while we do so. I'm a developer playing server admin, so I have basic knowledge of this stuff, but not much more than that.
Our old server is on shared hosting, which we access via a cpanel account, and the new server is running WHM, under which we can create as many cpanel accounts as we want. Here's what I'm currently thinking will be the simplest way of doing it:
- On the new server, set up a subdomain specifically for email, mailservices.domain.com or similar. Set up A records in the DNS so that domain is completely handled by the new server, and wait for the TTL to expire.
- On the new server, set up duplicate email accounts for all our users on mailservices.domain.com.
- On the old server, set the MX record for domain.com to indicate that email for this domain is handled by mailservices.domain.com, and set it to be a "remote mail exchanger" so it won't save the email locally.
- Tell all our users that they should now use mailservices.domain.com for their email. As soon as the new MX records are picked up, email should start being delivered to the new accounts.
- Before we fully transition domain.com to the new server, ensure that its MX records are set up to use mailservices.domain.com for email as well. That way, regardless of whether you access the old or new server during the transition, you're always sending mail to the new server.
Are there any fundamental misunderstandings in the above? Is there a better way to ensure we don't lose emails and mitigate delivery time issues?
Thanks for your help.