We recently announced the public preview of Standby Pools for Virtual Machine Scale Sets with Flexible Orchestration. Standby Pools is a new service that enables you to increase your scaling performance by creating a pool of pre-provisioned virtual machines from which your scale can pull from when scaling out.
Standby pools reduce the time to scale out by performing various initialization steps such as installing applications/ software or loading substantial amounts of data. These initialization steps are performed on the virtual machines in the standby pool before to being moved into the scale set.
There is more to quickly scaling out than simply receiving a virtual machine. Standby pools are designed for customers not only looking to get a VM as quickly as possible, but also for the customers who need the time to get their VM setup and configured before it receives any work.
With Standby Pools, all the work you normally would do after receiving a virtual machine can be completed in the pool. This helps ensure the VMs in your scale set are the ones handling the work while your pooled VMs are ready at a moment’s notice.
When it is time to scale up, any scale up event will automatically pull a VM from the pool. If your VM is in a running state, it is immediately ready for work. If you are using deallocated VMs to save costs, we automatically move the VM from the pool into the scale set and start it. With deallocated VMs, the only latency you experience is from the time the VM is shutdown to when it is running. There is no additional waiting for your application to install or running scripts to download binaries. These steps were already done in the pool.
When it comes time to scale your scale set back down, the pool will automatically refill to maintain the maxReadyCapacity configured. This ensures that you always maintain a safe balance of VMs in your scale set and VMs in your standby pool.
Key Benefits
- Saving time by completing post provisioning steps in the pool before instances are moved into the scale set
- Increase scaling performance
- Save costs by utilizing deallocated virtual machines
- Maintain a safety net of VMs ready to scale out at any time.
- The standby pool scales up and down automatically based on your scale set capacity
Customers of Standby Pools
- Large and small enterprises who need to quickly scale their workloads and who have long post provisioning steps.
- Organizations who require a low latency and cost-effective scaling solution.
- Customers wanting to optimize their deployments for random bursts of incoming traffic.
Adding a Standby Pool
Adding a Standby Pool to a new Virtual Machine Scale Set or an existing one is simple and can be done via the Azure Portal or your favorite SDK such as .NET, Java, PowerShell, CLI, and more.
To add a Standby Pool to an existing scale set using the Azure Portal, navigate to your Virtual Machine Scale Set and under Availability + scale, select Standby Pool. Then select Manage pool and provide a name, provisioning state and maximum ready capacity.
Save the changes and your pool will automatically start filling. Any future scale out events will automatically use instances from your Standby Pool.
If at any point you want to adjust the size or provisioning state of your pool, simply navigate back to the Standby Pool blade, select Manage pool and adjust the settings.
The pool will automatically adjust to meet the new configuration settings.
Available Now
Standby Pools are available in all public cloud regions. To get started using Standby Pools, see Standby Pools for Virtual Machine Scale Sets on Microsoft Learn.
Micah McKittrick
Microsoft Azure Compute Services
Senior Product Manager