Moving out of the cloud

It’s been nearly 4 years since I made the switch from a dedicated server to the cloud. It was August 15th, 2009 and I was tired of how much I was paying for a dedicated server, even considering that I was only covering half of the cost with my friend Dean Jones. My other buddy Daniel Jabbour had suggested Linode as he had already been hosting with them for quite some time. Switching to Linode cut my cost in half, gave me more than enough server to cover my low traffic websites and it was in the cloud, so it could be scaled up or out on a moment’s notice! Since then, I’ve sang the praises of Linode, referred them to all of my friends and have since scaled up to (at my peak) 5 servers.

Fast forward to more recently, I originally planned out and sister sites to be ran on individual Linode instances. The logic here was that I could scale up each site independently of each other. If I needed to upgrade one site, none of the other sites would be affected by the downtime. This wasn’t necessarily ideal as not every website generates the same amount of revenue. Because of that, I worked towards being able to host multiple sites on a server. This eventually lead to all of the sites being ran on a single server.

Fast forward again, running all of the sites on a single server was working fine but I was struggling with some performance bottlenecks and running out of disk space. The alleviate these issues, I moved to a more traditional setup with 4 servers: database server, content delivery server and two web servers (with a NodeBalancer). This also worked out well, and I was able to scale up the server storing the images independently of the other boxes and add in additional web servers as needed. All in, this was costing me $340 a month (including backups on 3 of the servers).

Linode did me well but not without some gripes. Specifically the backups and the time it took to upgrade and/or migrate a Linode instance. As I’ve blogged about before, Linode backups are terribly slow if you have a lot of files and I had a ton of files. Backups on my content delivery server were taking nearly a day to complete, which also means it would take a day to restore a server. Pretty much unusable if you need to make a quick recovery. I’ve since moved to using rsync to sync the images to a few end points for redundancy. Don’t get me wrong, the Linode backups are great for cloning servers and I had done so numerous times with the web servers but for a file server I would not recommend it.

So the backup issue did have an easy fix, but what about the slow upgrades? They were never a problem for me on the smaller Linode instances, but once you get into the 4G range (not 8G) the time it takes to upgrade can be upwards of an hour or more. It’s far from unreasonable, but it is definitely an inconvenience. The upgrade process itself transfers your Linode instance to another physical server in the same data center. Just for some perspective, the estimate to upgrade a Linode 1G to a larger plan is estimated to take 18 minutes, just to transfer 24GB. Perhaps I’m being irrational, but I feel like that shouldn’t take that long considering it’s just moving raw disk images.

Self-inflicted upgrades aside, in the last year Linode has alerted me about a potential server issue with the box my Linode instance resides on, twice. The way to resolve this issue is to proactively migrate your server which incurred the same amount of downtime as an upgrade. Granted, I went quite a few years without this ever happening, but when it does happen, it’s quite the inconvenience.

That’s the backstory, let’s talk about my exodus from the cloud just before the 2013 Summer Solstice. As of late, I’ve been increasingly dissatisfied with the performance on my Linode instances. Yeah, I could toss in more web servers or continue to upgrade the boxes vertically but I was starting to feel like I had outgrown it all. In regard to performance, my servers were starting to hit that threshold of 90% CPU usage fairly regularly. I know what you’re thinking, “but with 8 cores, 90% is only like 11% usage, right?” Absolutely, but then why does Linode set up their standard CPU usage alert at 90% and not 720%? I doubt I’ll ever know the answer as I didn’t bother asking about it.

I had been toying with the idea of going bare metal for the last year or so and conveniently, my buddy Sumit Birla had recently moved away from Amazon Web Services (AWS) to a local hosting company called Hivelocty Hosting. Although I never agreed with Sumit regarding AWS, his opinion on the matter meant a ton. When I heard that he went all in with Hivelocity and was moving all of his sites over there I knew he had found a winner. To cut to the chase, I have since moved all of my sites to a dedicated server over at Hivelocity.

Out of the gate, I was able to cut my hosting bill by over a $100 per month and the hardware I am now utilizing is significantly better than before. More RAM, faster processor, solid state harddrive, and the performance boost of being able to utilize the entire server’s capacity! The icing on the cake is that I am now keeping more money in my own community by choosing a local hosting provider. Of course, the potential for hardware failure has been increased, but considering I was already being affected by hardware failures with Linode, it’s a wash in my opinion.

After nearly 4 years in the cloud I’m happy with making the jump back to bare metal. I am still keeping my Linode account active for a while longer as I do have pending referral sign ups and I do love their DNS hosting. If I move my DNS hosting to another provider (perhaps CloudFlare?) that would eliminate my need for continuing on with Linode entirely. I’m still in the process of migrating some sites off of my Digital Ocean account but will continue to remain active with them just because I prefer their pricing model when I need to spin up new boxes for testing or when I’m writing tutorials and need a blank canvas to start with.

All things considered, I still highly recommend Linode (referral link) because of their customer support and stability over the years. I’m also still recommending Digital Ocean (referral link) because of their lower price and “on demand” pricing. Obviously, I’m also recommending Hivelocity Hosting (referral link) for your dedicated server needs and because their Impressive Support™.

I bit more about Hivelocity and their support, it truly has been very impressive. Everyone I have interacted with has been friendly and helpful and I’ve been able to work with some of the same people on multiple occasions. Every interaction I have had has felt very personal and I absolutely love knowing that everyone I am interacting with are neighbors. Granted my blog isn’t, but everything else I run is now built AND hosted in Tampa, FL 🙂

Josh Sherman - The Man, The Myth, The Avatar

About Josh

Husband. Father. Pug dad. Musician. Founder of Holiday API, Head of Engineering and Emoji Specialist at Mailshake, and author of the best damn Lorem Ipsum Library for PHP.

If you found this article helpful, please consider buying me a coffee.