AWS Spot Instance Guide: 7 Things You Should Know

AWS offers a number of discount options for their cloud resources, of which one of the more interesting is AWS spot instances. Spot instances offer an alluring discount for spare capacity — but of course, this purchasing option can’t be used the same way as on demand infrastructure. Here are seven things you should know about AWS spot instances, which may help you decide whether or not you should be using them.

1. What Spot Instances Are

This means that workloads need to be specifically designed for fault tolerance, though AWS claims that spot instances are interrupted less than 5% of the time. With spot instance hibernation, interrupted instances need not be terminated. Rather, they can be essentially paused, with the memory saved to the root EBS volume, then reloaded when the machine is resumed.

2. Best Practice: Spot Fleets

AWS recommends Spot Fleets as a best practice. One reason is that you can use fleets to request multiple instance types simultaneously — which not only increases the likelihood that your request is filled, but can mitigate cost risks by setting a maximum cost per hour for the whole fleet rather than a specific spot pool (group of instances with the same instance type, operating system, availability zone, and network platform).

3. When to Use AWS Spot Instances

Time critical workloads should have instances be automatically replaced, either by restarting workloads on a new instance, or for production websites, send users to a different instance using a load balancer.

Common use cases for spot instances include:

  • Batch processing
  • Web services
  • CI/CD development
  • Hadoop data processing
  • Image rendering
  • Big data analytics
  • Machine learning
  • Video transcoding
  • Massively parallel computations

4. Availability

5. Pricing

6. Savings Potential

For longer-running systems, reserved instances or on demand instances with on/off schedules may be better, so you should evaluate the savings rate for all three based on the workload.

When determining whether this amount of savings will be worthwhile, remember to consider any labor costs of building and maintaining your application to tolerate interruptions.

7. How AWS’s Option Compares to Other Clouds

There are a few main differences to highlight. Both Azure and Google offer fixed discounting structures, offering clarity and predictability on pricing. Google’s offering is a bit more flexible, with no limitations on the instance types. On the other hand, Azure users report issues with scaling to large numbers of VMs, with many VM types having limited availability. You also must launch in Batch/Scale Sets, with no option for an individual VM.

Should You Adopt an AWS Spot Instance Strategy?

Originally published at www.parkmycloud.com on September 20, 2019.

CEO of ParkMyCloud