Cloud hoppers

Article Image
Moving the hosting home is not a laughing matter. 
We have used Rackspace for our cloud hosting since 2012. For most of this period, it worked for us. It was expensive, and we had to be thrifty with our service selection, but it was good enough. Live and UAT servers were load-balanced, while the database replication between the two servers took care of the data redundancy.

We host our CMS, Webpuzzle, plus some custom-built applications for our client, William Reed Ltd. As the client expanded, adding more websites, their visitors increased, and bandwidth costs smashed our hosting budget. Then, there were “infrastructural works”, which meant that all our applications slowed down to a crawl, with web services starting to fail. We got a boilerplate “Not our fault. We’re working on it” email in response to our calls for help. This situation lasted a week.

I decided we outstayed our welcome with Rackspace. Rackspace, AWS, Azure, and Google Cloud cater to large clients, such as governments, defence contractors, etc. I researched AWS in 2019. Our client was expanding to China, and we flirted with a migration to AWS as they had CDN servers within China. I ran scared from their “CPU credits”. The idea that you could run out of “credits” and have to either slow to a crawl or keep “feeding the meter” didn’t sit well with me.

We had to find a new home, one that fit our size. At that time, we used Linode to host our new, volume-based CMS, Webpuzzle Studio. Linode is “developer owned”, or at least it used to be before Akamai bought them. I liked this idea. We shared a language with developers. The simplicity of their UI and no-nonsense list of services seemed like a great fit. Prices were affordable, and servers came with a generous helping of free bandwidth. Their customer support, mainly email-based, with a single phone number for emergencies, was not the fastest, but it was comprehensive.

Moving the hosting home is not a laughing matter. What if it didn’t work, and we had to backtrack? What if it worked, but Linode, now under Akamai’s wing, transformed into another unsustainable solution for us? Three weeks after we moved home, our client announced their “World’s 50 Best Restaurants” list, which usually gets more than a million visitors within 24 hours. It was a “make it or break it” situation.

Our system administrator spent a few months preparing detailed Ansible scripts enabling us to form servers within any cloud host in hours instead of days. They would upgrade us into a “hosting hopper”, able to switch the cloud hosts within a couple of days. We’d be free of the cloud provider hooks that make you stay in the same place, no matter how expensive it gets.

I believe in pushing the critical developments to the left to give us time to find and fix all unforeseen details. We formed servers a month in advance and distributed host files to everyone testing it. They enabled us to use the real-world domains while testing the new environment. Lots of worms came out of the woodwork. We made sure to add all of them, no matter how small, to Ansible scripts to automate the fixes.

I knew our client was holding their breath on the day of the big switch. They would save a considerable amount of money if it worked, but in their mind, the “if” outweighed the benefits. We earned their trust during the decade of collaboration, constantly demonstrating fanatical dedication to support, so they took a plunge with us.

It worked. Linode flawlessly kicked into gears, shrugging off half a million users on the day of the results announcement. We could now afford a managed database clustered between three nodes. Linode managed services monitor our live applications, with a team of administrators ready to spring into action. Bandwidth is virtually free. Our account includes DDOS protection. We now have more for less, and it all works.

We like our new home. Besides, now that we are a first-class “cloud hoppers”, we can always change it if we outstay our welcome.