Happy Holidays! Things are a little slow around the office, so I’ve decided to jot down some thoughts on one of my favorite features of Google Cloud — Spot Instances. Well, they’re actually called Preemptible VMs at Google. And they absolutely rock at ephemeral workloads! Here’s how and why.
- Rather than hosting a volatile secondary market, Google’s Preemptible VMs are a fixed flat 80% off of list price. Keep it simple.
- Per-minute billing lets you stop worrying about rounding up or down to the nearest hour.
- Custom VMs let you choose your own CPU and RAM combination. How cool is that???
- Preemptible VMs are backed by serious scale. For example, this fella runs his business on 25,000 Preemptible Instances! Good luck getting that type of ephemeral capacity elsewhere!
Now that we’ve covered the basics, time for some nuances.
Instance Type Simplicity
Google Compute Engine’s offering is not segmented across dozens upon dozens of instance types. You don’t need a “networking optimized VM” to get fast network at Google, and you don’t need a “storage optimized VM” to get lots of storage. You get fast networking with any instance, and your disk decision is decoupled from instance type. We also don’t do multiple generations of instances.
With Google Cloud you simply choose your CPU and RAM combination. Of course, as I mentioned above, you can even create your own instance types this way!
In other words, Google’s not in business of stocking their shelves with broad cereal choices, instead trying to give you a simple yet functionally rich offering. Depth of offering, not breadth.
Fixed, zero-volatility Market
Google Cloud’s Preemptible VMs are not ran on a secondary market. This is excess capacity left over from Compute Engine’s decision making around Live Migration, VM sizings, Custom VMs, and customer tenancy:
- Prices are fixed, so you don’t need to worry about managing bids, nor volatility of pricing. Sadly, most of the dozens of startups that help you get the most out of AWS Spot Instances are redundant at Google. We love simplicity and you should too!
- Fewer instance types means you don’t need to play tetris with your capacity. You don’t need to create instance soup just to get your CPU and RAM. The market for ephemeral instances is thus less complex and less fragmented. Flexibility.
In addition to simple pricing and simple choice, Google Cloud offers folks some good tooling around managing Preemptible VMs:
- You get a 30-second notice before getting evicted. Save your stuff and move to another instance.
- Managed Instance Groups reclaim your instances after they’ve been preempted for you.
Google Cloud Dataproc, Google’s managed Hadoop and Spark service, takes advantage of all this goodness for you, automatically repairing your jobs in case of preemption! You can run Spark with all these benefits:
- Per-minute billing
- 80% off for Preemptible instances
- Custom VM types
If you’ve made it this far, you are probably a fan. At the very least I hope that I made you pause and think.