Orchestration modes API comparison
Note
We recommend using Flexible Virtual Machine Scale Sets for new workloads. Learn more about this new orchestration mode in our Flexible Virtual Machine Scale Sets overview.
This article compares the API differences between Uniform and Flexible orchestration modes for Virtual Machine Scale Sets. To learn more about Uniform and Flexible Virtual Machine Scale Sets, see orchestration modes.
Instance view
Uniform API | Flexible alternative |
---|---|
Virtual Machine Scale Sets Instance View | Get instance view on individual VMs; Use Resource Graph to query power state |
Scale set lifecycle batch operations
Uniform API | Flexible alternative |
---|---|
Deallocate | Invoke Single VM API - Deallocate |
Delete | VMSS Batch delete API supported by VMSS in Flexible Orchestration Mode |
Get Instance View | Invoke Single VM API - Instance View |
Perform Maintenance | Invoke Single VM API - Perform Maintenance |
Power Off | Invoke Single VM API - Power Off |
Redeploy | Invoke Single VM API - Redeploy |
Reimage | Invoke Single VM API - Reimage |
Reimage All | Not applicable |
Restart | Invoke Single VM API - Restart |
simulate Eviction | Invoke Single VM API - simulate Eviction |
Start | Invoke Single VM API - Start |
Get or Update
Uniform API:
Virtual Machine Scale Sets VM Get or Update Instance:
Flexible alternative:
Invoke Single VM APIs:
- ARM Lock Resource for Instance Protection type behavior
Get or Update scale set VM instances
Uniform API | Flexible alternative |
---|---|
Get scale set VM details | Get virtual machine |
Update scale set VM instance | Update virtual machine |
Instance protection
Uniform API | Flexible alternative |
---|---|
Instance Protection | ARM Lock Resource for Instance Protection type behavior |
List instances
Uniform API:
VMSS List Instances
:
- Returns the scale set ID associated with each instance
Flexible alternative:
Azure Resource Graph:
resources
| where type == "microsoft.compute/virtualmachines"
| where properties.virtualMachineScaleSet.id contains "portalbb01"
Scale set instance operations
Uniform API:
Virtual Machine Scale Sets Operations:
- Update Instances
- Deallocate
- Perform Maintenance
- Power Off
- Redeploy
- Reimage
- Reimage All
- Restart
- Set Orchestration Service State
- Start
Flexible alternative:
Invoke operations on individual VMs.
Virtual machines Operations:
- Reimage: invoke single VM API - Reimage on Ephemeral OS VMs only
VM extension
Uniform API:
Virtual Machine Scale Sets VM Extension:
Flexible alternative:
Invoke operations on individual VMs.
Networking
Uniform API | Flexible alternative |
---|---|
Load balancer NAT pool | Specify NAT rule to specific instances |
Important
Networking behavior will vary depending on how you choose to create virtual machines within your scale set. Manually added VM instances have default outbound connectivity access. Implicitly created VM instances do not have default access.
For more information on networking for Flexible scale sets, see scalable network connectivity.
Scale set APIs
Uniform API:
Uniform Virtual Machine Scale Sets APIs:
Flexible alternative:
Not supported on Flexible Virtual Machine Scale Sets.