Bridging the technology gap

0%
Initializing systems
DevOps & Cloud

Zero-downtime cloud migration: how to move your systems without switching your business off

Illustration of traffic moving step by step from old servers to a new cloud environment

"We'll have to take the site down for the weekend" is the sentence that makes managers dread a cloud migration. In most cases it is not true. Downtime during a move rarely comes from the cloud itself. It comes from steps nobody rehearsed. Here is how a careful migration keeps the business running.

Why migrations cause downtime

Almost every outage during a migration traces back to one of four causes. The data on the new side is behind the old side. DNS changes are cached for hours, so some users reach the old system while others reach the new one. The new environment differs from the old in a small way nobody noticed, such as a firewall rule or an environment setting. And there is no tested way back when something goes wrong.

None of these needs downtime to fix. They need preparation, and the preparation is most of the project.

The steps of a calm migration

  • Inventory and dependencies. List every server, database, scheduled job, certificate and outside service the system touches. The thing you forgot is the thing that breaks on cutover day.
  • Build the new environment alongside the old. Create the target in the cloud while the current system keeps serving customers. Nothing changes for users yet.
  • Copy data continuously. Use replication so the new database stays a few seconds behind the old one, instead of one big copy that goes stale the moment it finishes.
  • Rehearse on a copy. Practise the whole cutover, including the way back, in a safe environment. Time each step and write down what you learned.
  • Prepare DNS early. Lower the time-to-live on your records days ahead, so that when you switch, the change spreads in minutes and not hours.
  • Shift traffic in stages. Send a small share of visitors to the new system first, watch errors and speed, then increase the share step by step.
  • Keep the old system intact. Leave it switched off but ready until you are sure. Retire it only after a quiet period.
The question to ask before cutover

"How do we go back, and have we actually tried it?" A rollback plan that exists only on paper is a hope, not a plan. Rehearse it the same way you rehearse the move.

The database is the hard part

Application servers are easy to start twice. Databases are not, because two copies accepting writes can disagree. The usual approach is to replicate from old to new, then at the switch moment pause writes briefly, let the last changes reach the new side, confirm the two match and open the new database for writes.

That pause can be seconds for many systems. For others, such as ones with heavy continuous writes, it can be longer, or you may need to design the application to queue changes during the switch. Knowing which case you are in is part of the early assessment.

When a short, planned pause is the better choice

Zero visible downtime is a good goal, not a rule. For a small internal tool used during office hours, a planned 30-minute window on a quiet evening may be simpler, cheaper and safer than building a full parallel setup. The honest question is what an interruption costs your business, and whether avoiding it is worth the extra preparation.

A cutover-day checklist

  • Backups taken and a restore tested within the last day
  • Everyone who can approve or fix something is available and knows their role
  • A written run-sheet, with times and an owner for every step
  • Monitoring open on both environments, with alerts going to a person
  • A clear point at which you stop and roll back, agreed in advance
  • A short message ready for customers, just in case
Planning a move to the cloud?Our cloud engineers plan migrations in rehearsed waves with a tested way back. Start with the free readiness check.
See cloud migration

The bottom line

A migration without downtime is not magic. It is a parallel environment, data that keeps copying, a rehearsed cutover and a way back that has been tried. If your current plan relies on "it should be fine on the day", slow down and rehearse first. Our cloud readiness checklist and cloud migration checklist guide are good places to start, and what drives the cost explains what to expect on price.

Can any cloud migration really have zero downtime?

Many can have no visible downtime, but not all. Systems with a single database that must stay perfectly consistent may need a short, planned pause. The right plan states this up front instead of promising zero.

How long does a migration with no downtime take?

It depends on the size of the data and how many systems depend on each other. Running both environments side by side adds preparation time, which is the price of a calm cutover.

What is the most common cause of migration downtime?

Untested steps on the day. Teams that rehearse the cutover on a copy, including the way back, find most problems before customers can.

Do we need to keep the old servers after the move?

Yes, for a while. Keep them switched off but intact until you are confident, so there is a fast way back if something unexpected shows up.

Keep reading

Related articles

Let's build something that lasts.

Tell us what's broken, or grab a free 30-minute discovery call. You'll talk to the people who will actually do the work.