Choosing the right cloud provider: AWS vs GCE vs Digital Ocean vs OVH


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

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: GCE is vastly superior to its competitors. It’s cheaper and easier to manage. If you go cloud, go GCE.

AWS is 25-100% more expensive to run the same infrastructure, in addition to being slower and having fewer capabilities.

Note: We have no experience with Microsoft Azure and cannot comment on it. The few feedbacks we heard so far were rather negative. It may need time to mature.

Cheap Clouds

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).

Dedicated Clouds

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.

IBM SoftLayer:

  • 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 useIBM 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.

Cheat Sheet

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

Conclusion

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.

10 thoughts on “Choosing the right cloud provider: AWS vs GCE vs Digital Ocean vs OVH

  1. 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.

    Like

    • 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) ^^

      Like

  2. 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.

    Like

  3. 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.

    Like

  4. 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 $$.

    Like

  5. 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?

    Like

  6. 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 🙂

    Like

Post a Comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s