Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Managed DevOps Pools is a new service that is an evolution of Azure DevOps Virtual Machine Scale Set agent pools, simplifying custom pool creation even further by improving scalability and reliability of custom pools. Managed DevOps Pools is a fully managed service where the virtual machines that run the agents live in a Microsoft Azure subscription and not in your own Azure subscription, like when using Azure DevOps Virtual Machine Scale Set agent pools.
If you're considering using auto-scalable self-hosted agent pools, we recommend looking at Managed DevOps Pools.
Feature comparison
The following table compares features of Managed DevOps Pools and scale set agents.
Feature | Managed DevOps Pools | Azure virtual machine scale set agent pools |
---|---|---|
Pricing | Pricing is the same for Managed DevOps Pools and Scale set agents. You pay a fixed monthly cost for Azure DevOps Services self-hosted parallel jobs, combined with the cost of the Azure services used by your pool. See Managed DevOps Pools pricing for more information. | Same as Managed DevOps Pools pricing |
Virtual machine hosting | Agents run on an Azure subscription owned and managed by Microsoft. For more information, see Microsoft Managed DevOps Pools architecture overview | Agents run on your Azure subscription |
Standby agent schedule | Provides flexible scheduling options to configure the number of standby agents available at different times as well as an automatic standby agent option | Supports a single standby agent count setting (equivalent to Managed DevOps Pools All Week Scheme) |
Scaling granularity | Scale out is done in increments of one | Scale out is done in increments of a percentage of the maximum pool size, potentially resulting in extra idle agents for which you are billed |
Pool size | Support for thousands of agents | Support for hundreds of agents |
Multiple images | Support for multiple images in your pool | Supports only a single image |
Quota | Quota is dedicated to the Managed DevOps Pools resource and not shared with other services in your subscription | Uses Compute quota shared with other services in your subscription |
Virtual network support | Support for running in a private network or joining your existing virtual network | Support for joining an existing virtual network or creating a new one |
Image support | Azure Pipelines images (same as Microsoft-hosted agent images for Windows and Linux), selected Azure Marketplace images, Azure compute gallery images | Azure Marketplace images and custom images |
VMSS extension scripts | Not supported, but you can configure your custom image with the required software | You can run a custom script on your agent before it starts running pipeline jobs |
Azure Key Vault integration | Download Azure Key Vault certificates to your agent automatically | Key vault certificates can be preinstalled on your custom images, or downloaded using tasks or VMSS extension scripts |
Multiple organizations | Support for using a pool in multiple Azure DevOps organizations, and optionally restrict the pool to certain projects | Supports a single Azure DevOps organization |
Stateless agents | Supported | Supported on Windows Server and selected Linux images |
Stateful agents | Supported | Supported |
Spot Virtual Machine support | On product roadmap | Not supported |
Containers | On product roadmap | Not supported |
BCDR | Not yet planned, but will be prioritized based on customer feedback | Supports availability sets and zones |
Map scale set agent settings to Managed DevOps Pools
You can configure a Managed DevOps Pool with similar behavior as your Azure virtual machine scale set agent pool by mapping the scale set agent pool settings to their Managed DevOps Pools equivalent.
Scale set agents setting | Managed DevOps Pools equivalent setting |
---|---|
Automatically tear down virtual machines after every use | Choose stateless pools for a fresh agent for every job (Automatically tear down virtual machines after every use), or stateful pools for persistent agents |
Save an unhealthy agent for investigation | Not available in Managed DevOps Pools |
Maximum number of virtual machines in the scale set | Maximum agents |
Number of agents to keep on standby | Choose All week scheme for the same behavior as scale set agents, configure a flexible schedule, or choose Automatic standby agent scheduling |
Delay in minutes before deleting excess idle agents | Grace period for stateful pools |
Configure VMs to run interactive tests | Enable Interactive Mode |