Change your performance tier without downtime using the Azure PowerShell module or the Azure CLI
Applies to: ✔️ Linux VMs ✔️ Windows VMs ✔️ Flexible scale sets
Note
This article focuses on how to change performance tiers. To learn how to change the performance of disks that don't use performance tiers, like Ultra Disks or Premium SSD v2, see either Adjust the performance of an ultra disk or Adjust disk performance of a Premium SSD v2
The performance of your Azure managed disk is set when you create your disk, in the form of its performance tier. The performance tier determines the IOPS and throughput your managed disk has. When you set the provisioned size of your disk, a performance tier is automatically selected. The performance tier can be changed at deployment or afterwards, without changing the size of the disk and without downtime. To learn more about performance tiers, see Performance tiers for managed disks.
Changing your performance tier has billing implications. See Billing impact for details.
Restrictions
- This feature is currently supported only for premium SSD managed disks.
- Performance tiers of shared disks can't be changed while attached to running VMs.
- To change the performance tier of a shared disk, stop all the VMs it's attached to.
- The P60, P70, and P80 performance tiers can only be used by disks that are larger than 4,096 GiB.
- A disk's performance tier can be downgraded only once every 12 hours.
- The system does not return Performance Tier for disks created before June 2020. You can take advantage of Performance Tier for an older disk by updating it with the baseline Tier.
Prerequisites
Install the latest Azure CLI and sign in to an Azure account with az login.
Note
Before you can use Azure CLI in Microsoft Azure operated by 21Vianet, please run az cloud set -n AzureChinaCloud
first to change the cloud environment. If you want to switch back to Azure Public Cloud, run az cloud set -n AzureCloud
again.
Create an empty data disk with a tier higher than the baseline tier
subscriptionId=<yourSubscriptionIDHere>
resourceGroupName=<yourResourceGroupNameHere>
diskName=<yourDiskNameHere>
diskSize=<yourDiskSizeHere>
performanceTier=<yourDesiredPerformanceTier>
region=chinaeast
az account set --subscription $subscriptionId
az disk create -n $diskName -g $resourceGroupName -l $region --sku Premium_LRS --size-gb $diskSize --tier $performanceTier
Create an OS disk with a tier higher than the baseline tier from an Azure Marketplace image
resourceGroupName=<yourResourceGroupNameHere>
diskName=<yourDiskNameHere>
performanceTier=<yourDesiredPerformanceTier>
region=chinaeast
image=Canonical:UbuntuServer:18.04-LTS:18.04.202002180
az disk create -n $diskName -g $resourceGroupName -l $region --image-reference $image --sku Premium_LRS --tier $performanceTier
Update the tier of a disk without downtime
Update the tier of a disk even when it is attached to a running VM
resourceGroupName=<yourResourceGroupNameHere> diskName=<yourDiskNameHere> performanceTier=<yourDesiredPerformanceTier> az disk update -n $diskName -g $resourceGroupName --set tier=$performanceTier
Show the tier of a disk
az disk show -n $diskName -g $resourceGroupName --query [tier] -o tsv
Next steps
If you need to resize a disk to take advantage of the higher performance tiers, see these articles: