Summary
The default VM size for az vm create (--size) and az vmss create (--vm-sku) is currently Standard_DS1_v2, which is an older-generation SKU. This should be updated to Standard_D2s_v5 to align with modern VM families and improve the out-of-box experience for users.
Current State
| Command |
Parameter |
Current Default |
az vm create |
--size |
Standard_DS1_v2 |
az vmss create |
--vm-sku |
Standard_DS1_v2 |
Requested Change
Update both defaults to Standard_D2s_v5, which is the current-generation general-purpose v5 size offering better price/performance.
Justification
Standard_DS1_v2 is a legacy SKU — The Dsv2-series is multiple generations behind and is not recommended for new workloads.
- Azure PowerShell already moved forward —
New-AzVM defaults to Standard_D2s_v3 today (source) and has a breaking change registered to move to Standard_D2s_v5 in v15.0.0.
- The breaking change is already registered in this repo —
_breaking_change.py registers the change from Standard_DS1_v2 → Standard_D2s_v5 for both vm create and vmss create, but with target_version=None. This means the warning is shown to users today with no timeline for the actual change.
Standard_D2s_v5 provides better compute performance, lower cost per vCPU, and broader availability than the Dsv2-series.
Proposed Action
- Set a concrete
target_version for the registered breaking change in _breaking_change.py
- Update the actual default values in the CLI to
Standard_D2s_v5 in the targeted release
Environment
- Azure CLI: 2.x (all current versions)
- Affects:
az vm create, az vmss create
Summary
The default VM size for
az vm create(--size) andaz vmss create(--vm-sku) is currentlyStandard_DS1_v2, which is an older-generation SKU. This should be updated toStandard_D2s_v5to align with modern VM families and improve the out-of-box experience for users.Current State
az vm create--sizeStandard_DS1_v2az vmss create--vm-skuStandard_DS1_v2Requested Change
Update both defaults to
Standard_D2s_v5, which is the current-generation general-purpose v5 size offering better price/performance.Justification
Standard_DS1_v2is a legacy SKU — The Dsv2-series is multiple generations behind and is not recommended for new workloads.New-AzVMdefaults toStandard_D2s_v3today (source) and has a breaking change registered to move toStandard_D2s_v5in v15.0.0._breaking_change.pyregisters the change fromStandard_DS1_v2→Standard_D2s_v5for bothvm createandvmss create, but withtarget_version=None. This means the warning is shown to users today with no timeline for the actual change.Standard_D2s_v5provides better compute performance, lower cost per vCPU, and broader availability than the Dsv2-series.Proposed Action
target_versionfor the registered breaking change in_breaking_change.pyStandard_D2s_v5in the targeted releaseEnvironment
az vm create,az vmss create