Cloud oversubscription: a cloud provider metric that simplifies your purchasing decision

Last weekend I was faced with the painful prospect of shopping for a mattress.

It should be easy, right? I need a firm king mattress. That’s it; no other requirements.

So, with a latte in my hand, I opened my laptop.

Two hours later, with 38 open tabs on my browser, the quest for a mattress turned into a data-crunching effort with a plethora of options ranging from $500 to $5,000. Also, the fact that there are 297 mattress manufacturers in the U.S. alone didn’t help.

As it turns out, a firm king size mattress can wildly range in technology and build quality. An unavoidable fact was staring me in the face: not all mattresses are created equal.

Fast forward to Monday; a former colleague called me for advice on cloud services. He needed a small environment consisting of a few 2×8 servers and a couple of larger 8×64 servers. No big deal. After all, a 2×8 server is a 2×8 server, regardless of provider, right?

Not so fast.

Thinking back to my mattress shopping struggles, I began to see similarities between it and comparing clouds. The most interesting commonality was in terms of pricing, most notably the price differences amongst options may sound the same (2×8, firm king size), but they deliver a substantially different level of performance.

Why? Well, for cloud services this is due to cloud oversubscription.

What is cloud oversubscription?

In simple terms, cloud oversubscription is the ratio of virtual server resources to physical server (host) resources. For example, a physical host (the bare metal host) equipped with two processor sockets of 12 cores each has a capacity of 24 physical CPUs (or pCPUs). This performance variability stems from the fact that different cloud providers operate at different levels of oversubscription – further complicating the process of comparing clouds.

Some cloud providers limit the number and size of virtual servers deployed on each host to 24 virtual CPUs (vCPUs) – that’s a CPU ratio of 1:1. However, many other providers may deploy 48 vCPUs on that same host, resulting in a CPU ratio of 2:1.

The same applies to memory: a host may have 512 GB of physical RAM installed while the total amount of RAM assigned to all virtual servers running on that host may be 764 GB (1.5:1).

On top of that, there’s storage I/O capacity, network I/O and other variables to consider.

It’s important to keep in mind that virtual servers do not typically consume 100% of available resources. So, when you combine several virtual servers on a single physical host, you can achieve a ratio higher than 1:1 on these different resources – with no impact on performance.

However, a provider may push that ratio higher and higher, because with the same investment (the physical server), they may be able to sell 1.5x, 2x, or maybe 4x the number of virtual servers. This excessive oversubscription affects performance and resiliency. The latter is due to the fact that, if a single host fails the provider will move virtual servers around to other available hosts. If those are already “overloaded,” it’s possible that a large number of virtual servers will suffer serious performance degradation.

What to consider when comparing clouds

So, how do you find out the level of oversubscription practiced by different cloud providers?

Well, you most likely won’t. This is a heavily guarded and rarely shared piece of information. However, just the same way that you can “test drive” a mattress at the store, you can – and you should – be comparing clouds before committing to moving your production workloads.

It’s a relatively straight-forward process:

  • Pick a few of your favorite cloud providers
  • Deploy similarly sized virtual servers in each one of them

Make sure you use the same operating system so you are comparing apples to apples (and not Apples to Windows), and fire up your favorite performance measurement tool to see which one is the best. There are tools available in the market to test CPU, memory and storage performance – including free ones.

Do your research. The right mattress will make you feel like you are sleeping in the clouds. The wrong cloud may cause you to lose sleep.