No worries, it’s a lot simpler than it seems. Each cloud provider is oriented toward a different type of customer and usage.
We grouped cloud providers by type. We’ll explain what is the purpose of each type? How do they differ? Which one is the most appropriate per use case? and Which cloud provider is the best in its respective category?
- General purpose clouds (Google Cloud, AWS, Azure)
- Cheap clouds (Digital Ocean, Linode)
- Dedicated clouds – bare metal (SoftLayer, OVH)
- Housing & collocation – not a cloud
General Purpose Clouds
Competitors: Amazon AWS, Google Compute Engine, Microsoft Azure
Quick test: A general purpose cloud is the best fit if you answer yes to any of the following questions.
- Do you run more than 50 virtual machines?
- Do you spend more than 1000 dollars/month on hosting?
- Does your infrastructure span multiple datacenters?
When to use: A general purpose cloud is meant to run anything and everything. It can replace a full rack of servers, as much as it can replace an ENTIRE datacenter. It provides the usual infrastructure plus some advanced bits that would be very hard to come by otherwise.
It is the go-to solution for running many heterogeneous applications requiring a variety of hardware. It’s versatility makes it ideal to run an entire operation in the cloud. It’s a perfect fit for an entire tech company, or a [big] tech project.
General purpose clouds make complex infrastructure available at the tip of your fingers:
- Get servers of various sizes and types of hardware
- Design your own networking and firewalls (same as in a real datacenter)
- Group and isolate instances from each other and from the internet
- Easily go multi-sites, worldwide
- Order, change or redesign ANYTHING in 60 seconds (while staying put on your chair)
A general purpose cloud is a full ecosystem. It includes equivalents to all the services typically found (and required) in datacenters/enterprise environments:
- SAN disks (EBS, Google Disks)
- Scalable Storage and backups (S3, Google Storage, Snapshots)
- Hardware load balancers (ELB, Google Load Balancer)
Which provider to use: Google cloud is vastly superior to its competitors. It’s cheaper, faster and easier to manage. If you go cloud, go Google Cloud.
AWS is twice the price to run the same infrastructure, in addition to being slower and having fewer capabilities. That being said, noone gets fired for buying AWS. Do you run on big company’s money and prefer to play safe with management? or do you run on limited funds and prefer to go with the better platform? That’s the current state of AWS vs Google Cloud.
Note: We have limited experience with Microsoft Azure and will not comment on it.
Competitors: Digital Ocean, Linode
Quick test: A cheap cloud is the best fit if you answer yes to any of the following questions.
- Do you run less than 5 virtual machines?
- Do you spend less than 100 dollars/month on hosting?
- Are you in big triple if you receive a bill double of what you expected?
- Would you qualify yourself as either an amateur or a hobbyist?
When to use: A cheap cloud is meant to offer proper servers to the masses, “proper” meaning decent hardware and good internet connectivity, at an affordable price. It is simply not possible to get that from a home or an office (note: recycling an old laptop on a broadband line is not a comparable substitute for a proper server).
It is the go-to solution for all basics needs. For examples, professionals running a few simple services with low-to-moderate traffic, agencies in need of a simple hosting to deliver back to the client, amateurs and hobbyists doing experiments.
Generally speaking, it’s the best choice for anyone who is looking for [at most] a couple of servers, especially if the main criteria are “easy to manage” and “good bang for the bucks“.
Cheap clouds make servers affordable and easy to get:
- Get real servers (server-grade hardware, good internet connectivity)
- Simple, easy to use, easy to manage and convenient
- Predictable costs, well-defined capabilities, no bullshit
- Buy or sell a server in 60 seconds
Which provider to use: The next-generation cheap clouds are DigitalOcean
and Linode. Go for Digital Ocean.
blog update 2016-10: Linode suffered from significant downtimes in the past month, similar to the downtimes from last year. These outages are the result of major DDoS attacks targeted against Linode itself (i.e. not one of the customer running on it). We recommend Digital Ocean as a safer choice.
Challengers: There is a truckload of historical and minor players (OVH, GoDaddy, Hetzner, …). They have some similar offerings to the cheap cloud providers, but it’s hidden somewhere in the poor UI trying to accommodate and sell 10 unrelated products and services. They may or may not be worth digging a bit (probably not).
Competitors: IBM SoftLayer, OVH, Hetzner
When to use: As a rule of thumb, the general purpose clouds are limited to 16 physical cores and 128 GB memory and 8 TB SAN drives, with the price increasing linearly along the specifications (double the memory = double the price). The dedicated clouds can provide much bigger servers and the high-end specs are significantly cheaper.
This is the go-to solution for special tasks running 24/7 that require exotic hardware, especially vertical scaling. Dedicated clouds are only fitted for special purposes.
Special case: We’ve seen people rent a single big dedicated server with vSphere and run numerous virtual machines on it. It allows to do plenty of experimentations at a fixed and fairly reasonable costs.
- Choose the hardware, tailored to the intended workload
- Ultimate performance (bare-metal, no virtualization)
- Quad CPU, 96 total cores is an option
- 1 TB memory, f*** yeah!
- 24 HDD or SSD drives in a single box
Which provider to use: IBM SoftLayer is the only one to offer the next generation of dedicated cloud. Getting servers works the same way as buying servers from the Dell website (select a server enclosure and pick the components) except it’s rented and the price is per month. (Common configurations are available immediately, specialized hardware may need ordering and take a few days).
SoftLayer takes care of the hardware transparently: shipment, delivery, installation, parts, repair, maintenance. It’s like having our own racks and servers… without the hassle of having them.
Challengers: There are a few historical big players (OVH, Hetzner, …). They are running on an antiquated model, providing only a predefined set of boxes with limited choice. They can compare positively to SoftLayer (read: cheaper and not harder to manage/use) when running a few servers with nothing too exotic.
Housing & Collocation
When to use: Never. It’s always a bad decision.
There are 3 kinds of people who do housing on purpose:
- People who genuinely think it’s cheaper (it is NOT when accounting for time)
- People who genuinely got their maths wrong (hence thinking it was cheaper =D)
- Students, amateurs, hobbyists, single server usage and not-for-profit
Let’s ignore the hobbyist. He got a decent server sitting in the garage. He might as well put it into a datacenter with 24h electricity and good internet to tinker around. That’s how he’ll learn. This is the only valid use case for housing.
What’s wrong with housing & collocation:
- Unproductive time to go back and forth to the datacenters, repeatedly
- Lost time and health moving tons of hardware (a 2U server is 20-40 kg)
- Be forced to deal with hardware suppliers (DELL/HP)
- Burn out, burst in rage and eventually attempt to strangle one colleague after having dealt with supplier bullshit for most of the afternoon (based on a real story)
- Waste 3 weeks between ordering something and receiving it
- Cry when something broke and there are no spare parts
- Cry some more because the parts are end-of-life and can’t be ordered anymore
- Suffer 100 times what initially expected because of the network and the storage (it’s the most expensive and the most difficult to get right in an infrastructure)
- Renew the hardware after 3-5 years, hit all the aforementioned issues in a row
- Be unable to have multiple sites, never go worldwide
These are major pain points to be encountered. Nonetheless it is easy to find cloud vs collocation comparisons not accounting for them and pretending to save $500k per month by buying your own hardware.
Abandoning hardware management has been an awesome life-changing experience. We are never going back to lifting tons of burden in miserable journeys to the mighty datacenter.
Make Your Own Datacenter
When to use: This was the go-to solution for hosting companies and the older internet giants.
The internet giants (Google, Amazon, Microsoft) started at a time when there was no provider available for their needs, let alone at a reasonable cost. They had to craft their own infrastructure to be able to sustain their activity.
Nowadays, they have opened their infrastructure and are offering it for sale to the world. Top-notch web-scale infrastructure has become an accessible commodity. A tech company doesn’t need its own datacenters anymore, no matter how big it grows.
Run an entire tech company in the cloud, or run only a single [big] project requiring more than 10 servers? Google Compute Engine
Run less than 10 servers, for as little cost as possible? Digital Ocean
Run only beefy servers ( > 100GB RAM) or have special hardware requirements? IBM SoftLayer or OVH
The cloud is awesome. No matter what we want, where and when we want it. There is always a server ready for us at the click of a button (and the typewriting of our credit cards details).
The most surprising thing we encounter daily on these services is to notice how everything is so new. A recurrent “available since XXX” written in a corner of the page, stating it’s only been there for 1-3 years.
These writings are telling a story. The cloud have had enough time to mature and it is ready to be mainstream. Maintaining physical servers is an era from the past.
28 thoughts on “What’s The Best Cloud Provider in 2017? AWS vs Digital Ocean vs Google Cloud vs OVH”
[…] There are a lot of clouds: GCE, AWS, Azure, Digital Ocean, RackSpace, SoftLayer, OVH, GoDaddy… Check out our article Choosing a Cloud Provider: AWS vs GCE vs SoftLayer vs DigitalOcean vs … […]
[…] opinionated place, and there are many people to advise you. In this case, The HFT Guy has written a great article about how to choose. He also has strong opinions about the two really big players, Amazon and Google. […]
I have the feeling that your view on OVH is totally incomplete. We are running dedicated clouds and private virtual datacenters (spread on separate location) for a price that largely beat most of their competitors. OVH is a serious competitor in Eu. Maybe you should not include products or companies in your comparison that you don’t know?
And I’m not affiliate with OVH, just happy with the service.
Then you should be glad that the review is positive on OVH and recommending for the specific cases where it shines =)
(While I am not personally running anything on OVH, I have many friends who do and even some ex-coworkers who have joined their rank.)
To clarify our thoughts about OVH:
* It is good for a few big servers (cheaper than the equivalent on SoftLayer)
* It is okay for a few small servers (struggling against DO/Linode focus and easiness)
* It is ill-advised for many servers, whatever the size (only competitors have the API+integrations+automation for managing at scale)
OVH have a strong history, they’re cheap, they’re known, they’re working well… so are all the competitors. The only strong differentiator is to be EU-based (important for many EU people) ^^
Very nice article, thanks for the good insight in some cloud solutions and real life experience with them. As a computer science student I tinkered around with AWS but never tried GCE before. I think I’ve got to do this now!
Only a small note, do you mean with “Hertzner” the German Server Provider Hetzner?
I’ve got a small vServer running there, can’t say anything negative but you must concern it’s maybe the cheapest solution for reasonable performance (good bandwith and reasonable CPU performance, no DDoS mitigations besides empty routing your connection unfortunately). So its not a real Cloud Provider I think.
It’s Hetzner indeed, typo fixed. Thank you.
OVH, Hetzner, online.net, 1and1.com, to quote some more, they are all major European players, decent and cheap. They were called “hosting providers” before the word “cloud” was invented. The new buzzword is a great marketing success =)
Beyond the marketing changes, the next generation cloud providers are meant to provision a server in ~ 1 minute anywhere anytime, and they have open API to allow for automation, external integrations and management at scale.
It’s a major evolution but it makes no difference to most people running only 2-3 servers for simple things.
One use case you omitted that can (sometimes) justify putting your own hardware in a physical data center is latency. Specifically in finance (and occasionally in a few other areas) there are situations where you really, really need to be within a few hundred meters of a specific location to ensure that network latency stays really low (like << 1 microsecond) and you need to be able to control the physical networking equipment, ensure your GPS/PTP signal is properly calibrated to +/- a few 10's of ns, etc. It's not a common use case but it does happen. And yeah, it's also a huge headache to manage and sucks down a lot of $$.
As AndyB points out, yeah, there are places where you want a server, such as at a stock exchange, where you can’t just rent a cloud one. There’s another use case for having your own rack, too: communications. For example when doing financial processing (talking to banks and the like), there are often requirements for a dedicated line between you and the bank and your endpoint has to be in the country. I heard noises that if you’re a big enough customer you can get this kind of service into, e.g., an AWS availability zone, but my understanding is that they’re not going to do this if you’re only spending a couple of grand per month with them. (Correct me if I’m wrong!)
I have a question about services like IBM SoftLayer: how deep are you expected to go into the management side of things? Do you spec your switches and cabling as well, and handle setting up LOM and the like yourself, too?
[…] If your infrastructure is so small that you can reserve all your 4 instances upfront, you should reconsider why you use AWS in the first place. There are more appropriate and cheaper options available. […]
Very interesting article 🙂
Haven’t tried GCE yet so will put this on my list of experiments.
I’m using the cheap clouds (a mix of DO and Linode) for now.
Not considering myself as a hobbyist, running more than 5 VPS, spending more than 100 dollars/month on hosting but I can’t afforrd to receive a bill double th an what I am expecting 🙂
This article is getting close to become 1 year old and I’m wondering if you would consider any changes?
I also wonder why you praise so much GCE when you actually are using AWS? What are your experiences with GCE to recommend it so much?
Please don’t get me wrong, I’m not trying to antagonize, I really like this article! But I just want to learn more about what experiences with GCE made your opinion so strong 🙂
I updated it 3 times along the year already. I am planning to give it a big refreshing soon.
We had a few systems in Google and used a few of their services and it was clear that it was easier to use, faster and cheaper, some would say to the point of insanity. Don’t get me wrong, AWS is a very solid service and we wouldn’t exist without them, it just happens that Google is catching up and it’s catching up bad! I believe there is a major opportunity to take there.
There was a time when I was supposed to lead the migration of one of our subsidiary to Google (and indirectly the whole world through my blog articles :D) but I got poached by another company to work on something completely different. So, no more cloud for me and no more articles for you. Too bad.
Thanks for the update! Would have been cool to read about that migrating experience… 😦
I’ve been investigating a lot and tried different services but I’m leaning towards OVH’s public cloud.
We’re currently running 2 dedicated with different providers and a .net web app on Azure. I’m starting to feel uncomfortable about the idea of how to handle any grow requirements that may arise… Also want to eliminate the hardware risk.
Currently our processing power requirements are very modest but with 6TB of traffic/month, OVH public cloud seems to be the cheapest option since they don’t charge anything for traffic.
>Never. It’s always a bad decision.
So I should go ahead and host my 5TB pricing database in the cloud and pay $1,200 a month for it because that’s cheaper than using, say, a NAS? Having a hard time believing this.
How much is a 5TB NAS enclosure? and the drives?
Enterprise hardware of course, not the cheapest NAS you could find on NewEgg with a bunch of WD Green.
You mean two 5 TB NAS enclosures, right? One to put in your local data center and another for the remote data center where you keep a copy. Then there’s the price of the link between the two so you can keep the copies in sync, the cost of setting up, testing and maintaining all of this, etc. etc.
Local storage (and often compute) is cheaper if you leave out a lot of the things that are done for you in cloud services. The only question is whether you want those left out.
It will come in around $1.5k. $3k if you go fully redundant (that’s the price for a ds1815+ with 5 2TB Red, which is 6TB under Raid 6). To host 5TB data in an SQL database, I would be paying near the price of one unit *per month*.
In general I agree with what you’re saying, I just challenge that Home units are *never* the answer. When you have a lot of data Home makes a lot of sense.
(sorry, the other comment went to the wrong place)
And the price for a NetApp enclosure, that is rack-able, with 6x 2TB drives 2,5″ (RAID 10 + spare)?
When you have a lot of data, it’s a lot of hassle to manage it, to hold it, scale it as you go and back it up. It’s also valuable, bring revenues when it works and losses when it doesn’t.
The cloud does all the painful hardware work and let you focus on the important tasks, which is more important for the business than any money savings, thus home units are never the answer because you never optimize for instant direct costs. (Also, buying hardware with inferior capabilities and reliability is not an acceptable form of cost savings).
Perhaps this is, then, the disconnect. You seem to be talking from a business perspective only. I’m coming from the perspective of someone who wants to move into retail trading. At this point, going to the cloud and paying these costs simply means I would never get started because I won’t be making enough to even cover such costs. I can, however, afford a Nas (not rack mountable, I don’t even have a rack). Of course, if I got to the point that I was making the kind of money to justify it, then yes I would appreciate the cost proposition of the cloud vs. having my own data center.
Having said all that, this has become a moot point for me because I realized I actually only need the full data for research, not an actual trading system so I don’t need to host 5TB of data. Making that adjustment brings the costs down to a manageable level.
This a business blog for running business operations.
Of course, an amateur cannot afford anything. It’s not worth a discussion.
Get an external 6 TB USB drive for your research. 😉
Good article. But…
Digitalocean and Linode – for amateur and hobbyists? Sorry have to disagree with you there. I know many major companies in the world using it. They are the cheapest and yet better performance and more importantly no vendor lock in. Have you ever tried to move from AWS to some other vendor? You can move from DO to Linode and vice-versa anytime.
I use it. It’s fine if you have a couple of servers or if you have no money.
They don’t exist in the same space as AWS/Google.
Really good blog. Thanks a lot.
How about AWS Lightsail? Does it belong to General Purpose Cloud, or Cheap Cloud? How does it compare to Digital Ocean (price/performance)? (I’ve never heard of anything similar in Google family, but good to know if there’s any.)
It’s a bastardized cloud.
Lightsail is a simplified user interface to use basic servers on AWS, without facing all the complexity of AWS.
It’s meant to compete and lure away customers from cheaper and simpler clouds, like Digital Ocean.
The thing is, it’s still AWS behind the hood with all the complexity and the pricing it entails. Customers who are better served by a cheap cloud are better served by a cheap cloud, not by an imitation.
loved this thread lol
Where would Interoute VDC stack up? As far as I know it is the only cloud with it’s own network.
The major clouds all have their own networks.
I’d say interoute is a poor imitation of the big ones, with a weird pricing model that appears to be even more expensive.
[…] are many types of cloud providers, public vs private, cheap vs expensive. You can read my article on which provider to pick and when. Today, we’re going to talk about the expensive clouds for enterprises, namely SoftLayer, AWS […]