Starting at the beginning, what are spot VM’s?
I compare Spot VM’s to the unsold hotel room or airline seat that you pick up at last minute at a fraction of the cost because you cant sell a service for today, tomorrow.
Essentially, at any point in time the percentage of spare capacity that Microsoft has in Azure will fluctuate enormously. That spare capacity is available to users at a fraction of the cost (up to 90% of the cost compared to PAYG or RI’s) in the form of Spot VM’s.
Spot pricing is available on single VMs in addition to VM scale sets (VMSS) which give you the ability to deploy a wide variety of workloads at a much lower price point. Spot VM’s offer the same characteristics as a pay-as-you-go virtual machine with the exception of (and here’s the catch/limitation) of pricing and evictions.
Spot VM’s can be evicted at any time if Azure needs capacity, making it unsuitable for production workloads.
Suitable Workloads:
The type of workload that might be a good candidate for Spot VM’s are the sort of workloads that can that can handle interruptions or don’t need to be completed within a specific period of time. Some examples include but are not limited to:-
Cost Comparison:
Is it worth it? Well… yes, if you can accept the possibility that you may get evicted and the service in question may experience some temporary interruption, then the price points over time become very compelling. The screen grabs below taken from the Microsoft pricing calculator provide a couple of examples of D series machines and how the cost compares across PAYG, RI’s and Spot.
Caveats:
The main consideration here is about ensuring that the workload is suited to Spot VM’s and you’re aware of the potential to be evicted. That will either be because Microsoft needs the resources back for PAYG workloads or that Spot prices have gone above the max price you defined for the VM.
Further Reading and Resources:
Azure Spot Virtual Machines – Pricing | Microsoft Azure