Very soon after I joined Virtustream, I quickly realized that one piece of Virtustream technology in particular was something that was causing confusion for customers, prospects, and even employees — especially me as our group’s FNG (you know, the group’s New Guy).
That technology was Virtustream MicroVMTM — often abbreviated as µVMTM. There has been so much confusion about what the MicroVM is — and how it works — that a lot of folks didn’t seem to understand the full benefits that Virtustream MicroVM can provide.
The short version is that MicroVMs are what enables customers to use Virtustream Enterprise Cloud in a true pay-as-you-go consumption model. I’ll get into the longer version in just a little bit.
MicroVM Misconceptions
I think it might be easier to clear up some of the confusion surrounding what MicroVMs are if I first make it clear what they are not.
A MicroVM is neither a very small virtual machine, nor a tiny portion of a virtual machine. (I’ll admit that was exactly what I thought when I first heard the term…)
A MicroVM is not a building block that Virtustream uses to assemble virtual machines. Virtustream still provisions VMs the old-fashioned way — as whole VMs — just like our customers are already used to.
MicroVMs are not what Virtustream sells. A MicroVM is not an actual, tangible thing, so it would be hard to sell one. Virtustream sells enterprise-class cloud services for mission-critical workloads. They sell these services in a true pay-for-only-what-you-use consumption model.
The Cloud Resource Problem
The promise of cloud computing has always been “pay only for what resources you actually use”. When you take a closer look at how most public cloud providers implement this you realize they’re actually delivering more of a “pay for what resources you allocate” — but you still pay for the full amount of resources you’ve allocated, even during periods when your utilization of those resources is in single-digit percentages.
This happens because with most providers you pick what “size” your VM will be (some providers call them “instances” instead of VMs). The sizes determine what resources that VM will have access to. If the VM’s workload is pretty much steady 24/7, it’s relatively easy to pick the size closest to the resources your VM uses.
For VMs running workloads that have their resource consumption vary over time, things become more complicated. Customers are often forced to make compromises. Do they choose a size that accounts for the average resource consumption? This will be less expensive, but will slow their peak workloads down. Do they choose a size that accounts for the peak resource consumption? This will cause no slow-downs at all, but will cause the customer to pay a higher price during the times they’re running at less than their peak resource consumption.
So What Are MicroVMs?
Virtustream MicroVMs are what enable customers to run their workloads in our cloud infrastructure without having to make those compromises.
When customers migrate their workloads to Virtustream Enterprise Cloud, they don’t need to pre-select sizes or worry about overprovisioning their VMs. They don’t have to worry about these things because of the elegant solution that MicroVMs enable.
The MicroVM is a unit of measurement. It measures the cloud infrastructure resources that the VMs are actually using — not what’s been allocated for their usage.
Spend a week with your VMs running at 20% of their normal resource utilization on a typical cloud provider and that week’s bill will be that same as it always is. With Virtustream that’s week’s bill will be about 20% of what is usually is.
Get hit with a sudden spike in your workload that consumes twice the maximum amount of resources the VMs have ever used before on a typical cloud provider and you get access to no more resources than you’ve allocated in advance, causing a big slow-down. If your workload scales out, you can spin up additional instances — that you’ll pay extra for — to stop the slow-down, but you’re responsible for doing that, not the provider. If your workload scales up, you do have the option of increasing your instance sizes, but that usually involves stopping the VMs, cloning them to new instances, and then starting up the new, larger VMs — and from here on out you’ll be paying the higher price for the larger instances from this point on. With Virtustream, those VMs simply get access to more resources as they need them, all without the customer needing to do anything. When the sudden spike decreases again, the cost per VM will go back down as the resource utilization goes down.
What’s so Confusing About All That?
The explanation of what MicroVMs enable — a true pay-for-only-what-you’re-actually-using consumption model — is pretty simple. The confusion can come in when you try to understand how the MicroVMs enable this.
MicroVMs are simply a unit of measurement, but a MicroVM is a simultaneous measurement of four different dimensions. Humans are great at understanding and visualizing single-dimension measures like height or weight. Two-dimension measures like area can be harder, but humans adjust to the idea easily enough. Three-dimension measures like volume are easy enough to get an intellectual understanding of, but humans usually aren’t good at developing an intuitive grasp of them. We tend to make the wrong guesses when estimating things like “which of these irregularly-shaped containers will hold more water” or “how much dirt will I need to fill this oddly-shaped hole”.
So you can imagine it getting more difficult as we try to understand how a four-dimension measurement works. As I tried to develop a training presentation to explain MicroVMs, I quickly discovered that there isn’t an obvious, easy way to show a four-dimensional measurement on a two-dimensional slide. (Think for a moment about how you’d do that, and you’ll see the issue pretty quickly.)
Turns out the easiest way to understand it isn’t to try to grasp the MicroVM as a whole at first, but instead to break it down into its components.
The dimensions that the MicoVM measures are:
- CPU usage
- Memory usage
- Storage IOPS
- Network bandwidth
Viewed this way, these four dimensions are pretty easy to understand. It’s also easy to see how each of these dimensions could vary independently or together, depending on how an individual VM’s workload changes. Now imagine how a complex process running across several or even dozens of VMs could have all four dimensions changing on all of the VMs as the overall workload changes.
The MicroVM enables a very simple way to view this complex changing system. By doing so, it enables Virtustream to bill customers based on only the resources they’re actually using at any given moment — and not bill them any more than that.
More Info
If you’d like to understand more about how MicroVMs are actually calculated, and see an example of how they enable significant cost savings for customers, read my post on the Virtustream company blog: What is a MicroVM?