From managed cloud to two self-hosted servers
- Sector
- Travel and digital content
- Duration
- 8 working days
- Role
- Proposal, design and delivery
01Where it started
Four lines of business — travel, tickets, books and audiobooks, editorial content — on managed services sized for a scale it did not yet have. Five months in a row at $500 to $600 on low traffic. The cost was not the peaks: it was the container, the database and an instance just for sessions and cache, running around the clock.
02What could not move
- The code is not touched: this is an infrastructure migration.
- The service cannot depend on a single machine.
- Deployment stays automatic.
03The decision
Two dedicated servers under Proxmox, each on its own network and behind its own firewall. Both run the application, the database and Redis; MySQL replicates in near real time and the load balancer drops whichever one stops answering. Redis went from a paid instance to a container. Files moved to a provider that does not charge for downloads: with audio and images, that outweighs server sizing. Shrinking instances would have cut this month's bill and left the problem standing.
04The trade-off
- What it cost
- The failover is not complete: if a server goes down, traffic moves to the other, but its MySQL is still a read-only replica. The site stays up but cannot sell until someone promotes it to primary.
- Why it was worth it
- Automatic promotion is what breaks a replicated database: one server alive but unreachable is enough to end up with two primaries. At this volume, a written procedure that takes minutes is far cheaper than reconciling two databases.
05What was not in the plan
Once migrated, the database started refusing connections with no rise in traffic. The cache lived in the database itself and every read opened a connection; the managed service had been absorbing that excess unnoticed. The cache moved to Redis. When you migrate, the first thing to show up is whatever the old platform was covering for.
06The result
$120 a month, flat: a dedicated server does not cost more when traffic rises. Deployment is still a push and the code was never touched, so going back to managed cloud when the volume justifies it is just another migration. AWS was not the wrong choice: it was chosen for a size the platform did not have yet.
Something similar in front of you? Tell me what you are dealing with and I will reply, almost always within 24 hours.
Get in Touch