Azure Ultra Disks offer high throughput, high IOPS, and consistent low latency disk storage for Azure IaaS virtual machines (VMs). This new offering provides top of the line performance at the same availability levels as our existing disks offerings. One major benefit of Ultra Disks is the ability to dynamically change the performance of the SSD along with your workloads without the need to restart your VMs. Ultra Disks are suited for data-intensive workloads such as SAP HANA, top tier databases, and transaction-heavy workloads.
GA scope and limitations
The following list contains Ultra Disk's limitations:
Ultra Disks can't be used as an OS disk.
Ultra Disks can't be used with Azure Compute Gallery.
Currently, Ultra Disks only support Single VM and Availability zone infrastructure options.
Ultra Disks don't support availability sets.
Existing disks currently can't change their type to an Ultra Disk. They must be migrated.
Encrypting Ultra Disks with customer-managed keys using Azure Key Vaults stored in a different Microsoft Entra ID tenant isn't currently supported.
Azure Disk Encryption isn't supported for VMs with Ultra Disks. Instead, you should use encryption at rest with platform-managed or customer-managed keys.
Azure Site Recovery isn't supported for VMs with Ultra Disks.
Azure Backup support for VMs with Ultra Disks is generally available. Azure Backup has limitations when using Ultra Disks, see VM storage support for details.
Ultra Disks support a 4k physical sector size by default but also supports a 512E sector size. Most applications are compatible with 4k sector sizes, but some require 512-byte sector sizes. Oracle Database, for example, requires release 12.2 or later in order to support 4k native disks. For older versions of Oracle DB, 512-byte sector size is required.
The following table outlines the regions Ultra Disks are available in, and their corresponding availability options.
Note
If a region in the following list lacks availability zones that support Ultra disks, then a VM in that region must be deployed without infrastructure redundancy to attach an Ultra Disk.
Redundancy options
Regions
Regional
Australia Central, Australia Central 2 Brazil Southeast Canada East Korea South Norway West UK West North Central US, West US US Gov Arizona, US Gov Texas
One availability zone
Brazil South Central India East Asia Germany West Central Korea Central South Central US Spain Central US Gov Virginia
Two availability zones
Indonesia Central New Zealand North Qatar Central
Three availability zones
Australia East Canada Central China North 3 North Europe, West Europe France Central Italy North Japan East Poland Central South Africa North Southeast Asia Sweden Central Switzerland North UAE North UK South Central US, East US, East US 2, West US 2, West US 3
Not every VM size is available in every supported region with Ultra Disks. The following table lists VM series that are compatible with Ultra Disks.
Specialized virtual machines targeted for heavy graphic rendering and video editing, as well as model training and inferencing (ND) with deep learning. Available with single or multiple GPUs.
The fastest and most powerful CPU virtual machines with optional high-throughput network interfaces (RDMA).
Determine VM size and region availability
VMs using availability zones
To use Ultra Disks, you need to determine which availability zone you are in. Not every region supports every VM size with Ultra Disks. To determine if your region, zone, and VM size support Ultra Disks, run either of the following commands, make sure to replace the region, vmSize, and subscriptionId values first:
CLI
subscriptionId="<yourSubID>"
# Example value is southeastasia
region="<yourLocation>"
# Example value is Standard_E64s_v3
vmSize="<yourVMSize>"
az vm list-skus --resource-type virtualMachines --location $region --query "[?name=='$vmSize'].locationInfo[0].zoneDetails[0].Name" --subscription $subscriptionId
PowerShell
# Example value is southeastasia
$region = "<yourLocation>"
# Example value is Standard_E64s_v3
$vmSize = "<yourVMSize>"
$sku = (Get-AzComputeResourceSku | where {$_.Locations -icontains($region) -and ($_.Name -eq $vmSize) -and $_.LocationInfo[0].ZoneDetails.Count -gt 0})
if($sku){$sku[0].LocationInfo[0].ZoneDetails} Else {Write-host "$vmSize is not supported with Ultra Disk in $region region"}
The response will be similar to the form below, where X is the zone to use for deploying in your chosen region. X could be either 1, 2, or 3.
Preserve the Zones value, it represents your availability zone and you'll need it in order to deploy an Ultra disk.
ResourceType
Name
Location
Zones
Restriction
Capability
Value
disks
UltraSSD_LRS
eastus2
X
Note
If there was no response from the command, then the selected VM size is not supported with Ultra Disks in the selected region.
Now that you know which zone to deploy to, follow the deployment steps in this article to either deploy a VM with an Ultra Disk attached or attach an Ultra Disk to an existing VM.
VMs with no redundancy options
Ultra disks deployed in select regions must be deployed without any redundancy options, for now. However, not every VM size that supports Ultra Disks are necessarily in these regions. To determine which VM sizes support Ultra Disks, use either of the following code snippets. Make sure to replace the vmSize, region, and subscriptionId values first:
subscriptionId="<yourSubID>"
# Example value is westus
region="<yourLocation>"
# Example value is Standard_E64s_v3
vmSize="<yourVMSize>"
az vm list-skus --resource-type virtualMachines --location $region --query "[?name=='$vmSize'].capabilities" --subscription $subscriptionId
# Example value is westus
$region = "<yourLocation>"
# Example value is Standard_E64s_v3
$vmSize = "<yourVMSize>"
(Get-AzComputeResourceSku | where {$_.Locations -icontains($region) -and ($_.Name -eq $vmSize) })[0].Capabilities
The response will be similar to the following form, UltraSSDAvailable True indicates whether the VM size supports Ultra Disks in this region.
If you intend to use your own template, make sure that apiVersion for Microsoft.Compute/virtualMachines and Microsoft.Compute/Disks is set as 2018-06-01 (or later).
Set the disk sku to UltraSSD_LRS, then set the disk capacity, IOPS, availability zone, and throughput in MBps to create an Ultra Disk.
Once the VM is provisioned, you can partition and format the data disks and configure them for your workloads.
Fill in the remaining entries with selections of your choice.
Select Disks.
On the Disks blade, select Yes for Enable Ultra Disk compatibility.
Select Create and attach a new disk to attach an Ultra disk now.
On the Create a new disk blade, enter a name, then select Change size.
Change the Disk SKU to Ultra Disk.
Change the values of Custom disk size (GiB), Disk IOPS, and Disk throughput to ones of your choice.
Select OK in both blades.
Continue with the VM deployment, the same as you would deploy any other VM.
First, determine the VM size to deploy. See the GA scope and limitations section for a list of supported VM sizes.
You must create a VM that is capable of using Ultra Disks, in order to attach an Ultra Disk.
Replace or set the $vmName, $rgName, $diskName, $region, $password, $user variables with your own values. Set $zone to the value of your availability zone that you got from the start of this article. Then run the following CLI command to create an Ultra-enabled VM:
First, determine the VM size to deploy. See the GA scope and limitations section for a list of supported VM sizes.
To use Ultra Disks, you must create a VM that is capable of using Ultra Disks. Replace or set the $rgName, $vmName, $region variables with your own values. Set $zone to the value of your availability zone that you got from the start of this article. Then run the following New-AzVm command to create an Ultra-enabled VM:
Sign in to the Azure portal, then search for and select Disks.
Select + New to create a new disk.
Select a region that supports Ultra Disks and select an availability zone, fill in the rest of the values as you desire.
Select Change size.
For Disk SKU select Ultra Disk, then fill in the values for the desired performance and select OK.
On the Basics blade, select the Advanced tab.
Select 512 for Logical sector size, then select Review + Create.
First, determine the VM size to deploy. See the GA scope and limitations section for a list of supported VM sizes.
You must create a VM that is capable of using Ultra Disks in order to attach an Ultra Disk.
Replace or set the $vmName, $rgName, $diskName, $region, $password, $user variables with your own values. Set $zone to the value of your availability zone that you got from the start of this article. Then run the following CLI command to create a VM with an Ultra Disk that has a 512-byte sector size:
# Create an ultra disk with 512-byte sector size
az disk create --subscription $subscriptionId -n $diskName -g $rgName --size-gb 1024 --location $region --sku UltraSSD_LRS --disk-iops-read-write 8192 --disk-mbps-read-write 400 --logical-sector-size 512
az vm create --subscription $subscriptionId -n $vmName -g $rgName --image Win2016Datacenter --ultra-ssd-enabled true --zone $zone --authentication-type password --admin-password $password --admin-username $user --size Standard_D4s_v3 --location $region --attach-data-disks $diskName
First, determine the VM size to deploy. See the GA scope and limitations section for a list of supported VM sizes.
To use Ultra Disks, you must create a VM that is capable of using Ultra Disks. Replace or set the $rgName, $vmName, $region variables with your own values. Set $zone to the value of your availability zone that you got from the start of this article. Then run the following New-AzVm command to create an Ultra-enabled VM:
Alternatively, if your existing VM is in a region/availability zone that is capable of using Ultra Disks, you can make use of Ultra Disks without having to create a new VM. By enabling Ultra Disks on your existing VM, then attaching them as data disks. To enable Ultra Disk compatibility, you must stop the VM. After you stop the VM, you can enable compatibility, then restart the VM. Once compatibility is enabled, you can attach an Ultra Disk:
Navigate to your VM and stop it, wait for it to deallocate.
Once your VM has been deallocated, select Disks.
Select Additional settings.
Select Yes for Enable Ultra Disk compatibility.
Select Save.
Select Create and attach a new disk and fill in a name for your new disk.
For Storage type select Ultra Disk.
Change the values of Size (GiB), Max IOPS, and Max throughput to ones of your choice.
After you're returned to your disk's blade, select Save.
Start your VM again.
Alternatively, if your existing VM is in a region/availability zone that is capable of using Ultra Disks, you can make use of Ultra Disks without having to create a new VM.
Enable Ultra Disk compatibility on an existing VM - CLI
To enable Ultra Disk compatibility, you must stop the VM. After you stop the VM, you can enable compatibility, then restart the VM. Once compatibility is enabled, you can attach an Ultra Disk:
az vm deallocate -n $vmName -g $rgName
az vm update -n $vmName -g $rgName --ultra-ssd-enabled true
az vm start -n $vmName -g $rgName
Create an Ultra Disk - CLI
Now that you have a VM that is capable of attaching Ultra Disks, you can create and attach an Ultra Disk to it.
subscriptionId="<yourSubscriptionID>"
rgName="<yourResourceGroupName>"
vmName="<yourVMName>"
diskName="<yourDiskName>"
# Create an Ultra disk
az disk create `
--subscription $subscriptionId `
-n $diskName `
-g $rgName `
--size-gb 4 `
--location $region `
--zone $zone `
--sku UltraSSD_LRS `
--disk-iops-read-write 1000 `
--disk-mbps-read-write 50
Attach the disk - CLI
subscriptionId="<yourSubscriptionID>"
rgName="<yourResourceGroupName>"
vmName="<yourVMName>"
diskName="<yourDiskName>"
az vm disk attach -g $rgName --vm-name $vmName --disk $diskName --subscription $subscriptionId
Alternatively, if your existing VM is in a region/availability zone that is capable of using Ultra Disks, you can make use of Ultra Disks without having to create a new VM.
Enable Ultra Disk compatibility on an existing VM - PowerShell
To enable Ultra Disk compatibility, you must stop the VM. After you stop the VM, you can enable compatibility, then restart the VM. Once compatibility is enabled, you can attach an Ultra disk:
# Stop the VM
Stop-AzVM -Name $vmName -ResourceGroupName $rgName
# Enable Ultra Disk compatibility
$vm = Get-AzVM -name $vmName -ResourceGroupName $rgName
Update-AzVM -ResourceGroupName $rgName -VM $vm -UltraSSDEnabled $True
# Start the VM
Start-AzVM -Name $vmName -ResourceGroupName $rgName
Create and attach an Ultra Disk - PowerShell
Now that you have a VM that is capable of using Ultra Disks, you can create and attach an Ultra Disk to it:
Ultra Disks offer a unique capability that allows you to adjust their performance. You can adjust the performance of an Ultra Disk four times within a 24 hour period.
Navigate to your VM and select Disks.
Select the Ultra Disk you'd like to modify the performance of.
Select Size + performance and then make your modifications.
Select Save.
Ultra Disks offer a unique capability that allows you to adjust their performance. You can adjust the performance of an Ultra Disk four times within a 24 hour period. The following command depicts how to use this feature:
az disk update --subscription $subscriptionId --resource-group $rgName --name $diskName --disk-iops-read-write=5000 --disk-mbps-read-write=200
Adjust the performance of an Ultra Disk using PowerShell
Ultra Disks have a unique capability that allows you to adjust their performance. You can adjust the performance of an Ultra Disk four times within a 24 hour period. The following command is an example that adjusts the performance without having to detach the disk:
Azure Disk Storage offers a range of disk types and capabilities that you can use to optimize application performance and costs in specific scenarios. In this module, you learn more about how disk performance works and identify Azure Disk Storage capabilities and performance-scaling options.