Announcing General Availability of Spot Priority Mix for Azure Virtual Machine Scale Sets Flexible


Today we’re excited to announce the General Available of Spot Priority Mix, a new feature that allows you to mix Spot and virtual machines (VMs), for Azure Virtual Machine Scale Sets (VMSS) flexible orchestration mode. In this blog post, we’ll explain what Spot Priority Mix is, how it works, and how you can use it to optimize your cloud costs and availability.


Spot Priority Mix is a feature that enables you to leverage the low prices of Spot virtual machines, while ensuring the reliability of standard virtual machines. Spot VMs are VMs that are run on unused Azure capacity and offer up to a 90 percent discount compared to standard VMs. However, Spot VMs may be evicted at any time if there is no available capacity or if the VM price exceeds your max price. Standard VMs are not subject to eviction, as the full price of the VM is paid for.


With Spot Priority Mix, you can specify a minimum number of standard VMs to guarantee a baseline level of performance and capacity. You can also integrate with Azure Autoscale to specify a percentage split of Spot and standard VMs for scaling in and out above your baseline standard VMs.


Key benefits of Spot Priority Mix include:

  1. Cost Savings: You can save up to 90% on your compute costs by using Spot VMs for workloads that can tolerate interruptions or evictions.
  2. Availability: You can ensure reliability for your workloads by using Standard VMs for workloads and processes that require guaranteed capacity.
  3. Flexibility: You can adjust the percentage split of Spot and Standard VMs in your scale set according to your needs. You can also adjust the percentage split at any time, without affecting the running instances.
  4. Scalability: Spot Priority Mix was built with Azure Autoscale in mind. You can take advantage of Autoscale to scale up or down based on metrics, while also taking into account your percentage split of Spot vs. Standard VMs as it scales.

What’s New?

There are two new parameters specifically for Spot Priority Mix:

  1. baseRegularPriorityCount: the base number of standard VMs. If the scale set capacity is at or below this number, all VMs will be standard, standard VMs.
  2. regularPriorityPercentageAboveBase: the percentage split of standard and Spot VMs that will be used when the scale set capacity goes beyond the number of VMs specified in the baseRegularPriorityCount.


How to use Spot Priority Mix

Spot Priority Mix can be configured through Azure Portal, Azure CLI, PowerShell, ARM templates, or SDKs for VMSS Flexible orchestration mode. To get started with Spot Priority Mix:

  1. Create a new VMSS with flexible orchestration mode with Spot Priority Mix enabled. If you already have a VMSS with flexible orchestration mode, you can still enable it.
  2. Specify the minimum number of standard VMs.
  3. Specify the percentage split of Spot VMs and standard VMs.
  4. Finish any extra settings you may need to configure and create or update your scale set.

Example: Azure Portal

First, navigate to the Azure Portal and go to the create screen for a new VMSS:




Ensure the following:

  1. Orchestration mode is set to Flexible
  2. Run with Azure Spot Discount is selected
  3. Select the VM size you’d like to use as the basis of the VMSS.

Next, move to the Spot tab and select the Scale with VMs and Spot VMs checkbox:



Once the Scale with VMs and Spot VMs checkbox is selected, you will be able to edit the Base VM (uninterruptible) count and Instance distribution parameters. The total of the % VMs (uninterruptible) and % Spot VMs (interruptible) must add up to 100%.



In this example, we are creating a VMSS flexible orchestration mode with 200 instances. The first 100 instances are standard Base VMs. The next VMs will be 60 standard VMs and 40 Spot VMs, following our percentage split in Instance distribution.


Learn more and get started with Spot Priority Mix by going to the documentation.

1 Reply

@brittanyrowe  Please fix the title of the page which is exhibited as "eneral Availability " missing the G.




=> By the way, congrats by the new feature!