Guide for optimering av spot instanser
Spot Instances Optimization Guide
Spot Instances (AWS), Spot VMs (Azure), and Spot/Preemptible VMs (GCP) are spare cloud capacity offered at 70 to 90 percent off the on-demand pris. The catch is that the cloud leverantor can reclaim the instans with as little as 30 seconds of warning when demand for the underlying hardware rises. For arbetsbelastnings that can tolerate interruption — and only for those arbetsbelastnings — spot is the cheapest compute in the public cloud by a wide margin.
What Workloads Belong on Spot
Spot is appropriate for arbetsbelastnings that are stateless, fault-tolerant, and interruptible:
- Batch and HPC jobs — image rendering, video transcoding, Monte Carlo simulations. Checkpoint progress and resume on a replacement instans.
- CI/CD runners — job queues can wait for a replacement instans without missing release deadlines.
- Stateless web tiers — behind a load balancer with autoscaling, an evicted instans is replaced in seconds.
- Big-data processing — Spark, Hadoop, and data-warehouse clusters designed to handle node loss.
- Dev and test environments — non-production arbetsbelastnings where a 2-minute interruption is acceptable.
Spot is not appropriate for stateful databases, single-instans applications with no replica, interactive sessions with users, or batch jobs that cannot be checkpointed.
Provider Comparison
| Provider | Min eviction notice | Max lifetime | Typical discount |
|---|---|---|---|
| AWS Spot Instances | 2 minutes | none | ~70% off on-demand |
| Azure Spot VMs | 30 seconds | none | ~80% off (Linux) |
| GCP Spot VMs | 30 seconds | none | ~60-91% off |
| GCP Preemptible VMs (legacy) | 30 seconds | 24 hours max | ~60-80% off |
GCP Spot VMs (the successor to Preemptible VMs) give the deepest rabatt, and GCP sends a shutdown script 30 seconds before eviction. AWS Spot offers the gentlest notice (2 minutes), giving batch jobs time to checkpoint. Azure falls in between.
Designing for Interruption
The four patterns that make spot reliable:
- Checkpoint and resume — write progress to durable lagring (S3, Cloud Storage) every few minutes, and restart from the last checkpoint on a replacement instans.
- Distributed work queue — use a queue (SQS, Pub/Sub, Service Bus) to hand out work units. If an instans is evicted, the work unit returns to the queue for another instans to pick up.
- Multi-instans + autoscaler — run a minimum of 2 spot instanss behind a load balancer and configure an autoscaler to launch a replacement when one is evicted.
- Spot + on-demand mix — run 70 to 90 percent of capacity on spot and the remainder on on-demand or reserverad, so the arbetsbelastning degrades gracefully rather than fully stopping when spot is unavailable.
Spot Fleet and Capacity Rebalancing
AWS Spot Fleet and Azure Spot VM Scale Sets let you request a target capacity across multiple instans types and Availability Zones, which dramatically reduces the chance of all your spot capacity being reclaimed at once. Configure the fleet to span 3 to 5 instans types across 2 to 3 zones, and the probability of total loss drops below 1 percent per month.
GCP does not have a direct Spot Fleet equivalent, but MIG (Managed Instance Group) with multiple instans templates and the proactiveRefresh setting achieves a similar effect.
Cost Tracking
Spot priss fluctuate with demand, so a arbetsbelastning that kostnads $0.029 per hour today might kostnad $0.058 per hour next week. Set billing alerts at 110 percent of the rolling 30-day average, and configure your fleet to fall back to on-demand automatically when the spot pris exceeds the on-demand pris — at that point spot offers no savings and only adds interruption risk.
See our AWS vs Azure compute jamforelse for the per-instans spot rabatt, and the reserverad instanss guide for the commitment strategy to apply to the on-demand portion of your mixed fleet.