Skip to content

Commit 65ee16d

Browse files
author
Lisa Pettyjohn
committed
OSDOCS-15304#Performance plus for Azure Disk
1 parent fd20784 commit 65ee16d

5 files changed

+249
-0
lines changed
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
//
2+
// Module included in the following assemblies:
3+
//
4+
// * storage/container_storage_interface/persistent-storage-csi-azure.adoc
5+
//
6+
7+
:_mod-docs-content-type: PROCEDURE
8+
[id="persistent-storage-csi-azure-disk-perf-plus-create-new-disk_{context}"]
9+
= Enabling performance plus by creating new disks
10+
11+
To enable performance plus, you need to create a new disk.
12+
13+
The following procedure shows how to create a disk with performance plus enabled and, if desired, attach it to a virtual machine (VM).
14+
15+
.Prerequisites
16+
17+
* Access to Azure CLI with Azure account
18+
19+
.Procedure
20+
21+
To enable performance plus when creating a new disk:
22+
23+
. Create a resource group by running the following commands in the Azure CLI:
24+
+
25+
[resource,terminal]
26+
----
27+
export RANDOM_SUFFIX=$(openssl rand -hex 3)
28+
export MY_RG="PerfPlusRG$RANDOM_SUFFIX"
29+
export REGION="WestUS2"
30+
az group create -g $MY_RG -l $REGION
31+
----
32+
+
33+
.Example output
34+
[source,terminal]
35+
----
36+
{
37+
"id": "/subscriptions/xxxxx/resourceGroups/PerfPlusRGxxx",
38+
"location": "WestUS2",
39+
"name": "PerfPlusRGxxx",
40+
"properties": {
41+
"provisioningState": "Succeeded"
42+
}
43+
}
44+
----
45+
46+
. Create a new disk with performance plus enabled by running the following commands in the Azure CLI:
47+
+
48+
[source,terminal]
49+
----
50+
export MY_DISK="PerfPlusDisk$RANDOM_SUFFIX"
51+
export SKU="Premium_LRS"
52+
export DISK_SIZE=513
53+
az disk create -g $MY_RG -n $MY_DISK --size-gb $DISK_SIZE --sku $SKU -l $REGION --performance-plus true
54+
----
55+
+
56+
This creates a new disk 513 GiB, or larger, with performance plus enabled using a valid SKU value.
57+
+
58+
.Example output
59+
[source,terminal]
60+
----
61+
{
62+
"id": "/subscriptions/xxxxx/resourceGroups/PerfPlusRGxxx/providers/Microsoft.Compute/disks/PerfPlusDiskxxx",
63+
"location": "WestUS2",
64+
"name": "PerfPlusDiskxxx",
65+
"properties": {
66+
"provisioningState": "Succeeded",
67+
"diskSizeGb": 513,
68+
"sku": "Premium_LRS",
69+
"performancePlus": true
70+
},
71+
"type": "Microsoft.Compute/disks"
72+
}
73+
----
74+
75+
. Attempt to attach the disk to a VM by running the following commands in the Azure CLI:
76+
+
77+
[source,terminal]
78+
----
79+
export MY_VM="NonExistentVM"
80+
if az vm show -g $MY_RG -n $MY_VM --query "name" --output tsv >/dev/null 2>&1; then
81+
az vm disk attach --vm-name $MY_VM --name $MY_DISK --resource-group $MY_RG
82+
else
83+
echo "VM $MY_VM not found. Skipping disk attachment."
84+
fi
85+
----
86+
+
87+
.Example output
88+
[source,terminal]
89+
----
90+
VM NonExistentVM not found. Skipping disk attachment.
91+
----
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
//
2+
// Module included in the following assemblies:
3+
//
4+
// * storage/container_storage_interface/persistent-storage-csi-azure.adoc
5+
//
6+
7+
:_mod-docs-content-type: PROCEDURE
8+
[id="persistent-storage-csi-azure-disk-perf-plus-from-snapshots_{context}"]
9+
= Creating new disks from existing disks or snapshots with performance plus enabled
10+
11+
This procedure shows how to create a new disk from an existing disk or snapshot that has performance plus enabled on it.
12+
13+
Replace the `SOURCE_URI` with a valid source blob URI that belongs to the same region (WestUS2) as the disk.
14+
15+
.Prerequisites
16+
17+
* Access to Azure CLI with Azure account
18+
19+
.Procedure
20+
21+
To enable performance plus when creating a new disk from an existing disk or snapshot:
22+
23+
. Create a resource group for migration by running the following commands in the Azure CLI:
24+
+
25+
[resource,terminal]
26+
----
27+
export RANDOM_SUFFIX=$(openssl rand -hex 3)
28+
export MY_MIG_RG="PerfPlusMigrRG$RANDOM_SUFFIX"
29+
export REGION="WestUS2"
30+
az group create -g $MY_MIG_RG -l $REGION
31+
----
32+
+
33+
.Example output
34+
[source,terminal]
35+
----
36+
{
37+
"id": "/subscriptions/xxxxx/resourceGroups/PerfPlusMigrRGxxx",
38+
"location": "WestUS2",
39+
"name": "PerfPlusMigrRGxxx",
40+
"properties": {
41+
"provisioningState": "Succeeded"
42+
}
43+
}
44+
----
45+
46+
. Create a snapshot of a disk that has performance plus enabled on it by running the following commands in the Azure CLI:
47+
+
48+
[source,terminal]
49+
----
50+
export MY_SNAPSHOT_NAME="PerfPlusSnapshot$RANDOM_SUFFIX"
51+
echo "Creating snapshot from original disk..."
52+
az snapshot create \
53+
--name $MY_SNAPSHOT_NAME \
54+
--resource-group $MY_RG \
55+
--source $MY_DISK
56+
----
57+
58+
. Obtain the snapshot ID for use as a source.by running the following commands in the Azure CLI:
59+
+
60+
[source,terminal]
61+
----
62+
SNAPSHOT_ID=$(az snapshot show \
63+
--name $MY_SNAPSHOT_NAME \
64+
--resource-group $MY_RG \
65+
--query id \
66+
--output tsv)
67+
68+
echo "Using snapshot ID: $SNAPSHOT_ID"
69+
----
70+
71+
. Create the new disk using the snapshot as the source by running the following commands in the Azure CLI:
72+
+
73+
[source,terminal]
74+
----
75+
export MY_MIG_DISK="PerfPlusMigrDisk$RANDOM_SUFFIX"
76+
export SKU="Premium_LRS"
77+
export DISK_SIZE=513
78+
79+
az disk create \
80+
--name $MY_MIG_DISK \
81+
--resource-group $MY_MIG_RG \
82+
--size-gb $DISK_SIZE \
83+
--performance-plus true \
84+
--sku $SKU \
85+
--source $SNAPSHOT_ID \
86+
--location $REGION
87+
----
88+
+
89+
.Example output
90+
[source,terminal]
91+
----
92+
{
93+
"id": "/subscriptions/xxxxx/resourceGroups/PerfPlusMigrRGxxx/providers/Microsoft.Compute/disks/PerfPlusMigrDiskxxx",
94+
"location": "WestUS2",
95+
"name": "PerfPlusMigrDiskxxx",
96+
"properties": {
97+
"provisioningState": "Succeeded",
98+
"diskSizeGb": 513,
99+
"sku": "Premium_LRS",
100+
"performancePlus": true,
101+
"source": "https://examplestorageaccount.blob.core.windows.net/snapshots/sample-westus2.vhd"
102+
},
103+
"type": "Microsoft.Compute/disks"
104+
}
105+
----
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
//
2+
// Module included in the following assemblies:
3+
//
4+
// * storage/container_storage_interface/persistent-storage-csi-azure.adoc
5+
//
6+
7+
:_mod-docs-content-type: CONCEPT
8+
[id="persistent-storage-csi-azure-disk-perf-plus-limits_{context}"]
9+
= Limitations
10+
11+
Performance plus for Azure Disk has the following limitations:
12+
13+
* Can only be enabled on Standard HDD, Standard SSD, and Premium SSD managed disks that are 513 GiB or larger.
14+
15+
* Can only be enabled on new disks.
16+
+
17+
*Workaround:* Create a snapshot of your disk, and then create a new disk from the snapshot.
18+
19+
* Not supported for disks recovered with Azure Site Recovery.
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
//
2+
// Module included in the following assemblies:
3+
//
4+
// * storage/container_storage_interface/persistent-storage-csi-azure.adoc
5+
//
6+
7+
:_mod-docs-content-type: CONCEPT
8+
[id="persistent-storage-csi-azure-disk-perf-plus-overview_{context}"]
9+
= Performance plus for Azure Disk
10+
11+
By enabling performance plus, the Input/Output Operations Per Second (IOPS) and throughput limits can be increased for the following types of disks that are 513 GiB, and larger:
12+
13+
* Azure Premium solid-state drives (SSD)
14+
15+
* Standard SSDs
16+
17+
* Standard hard disk drives (HDD)

storage/container_storage_interface/persistent-storage-csi-azure.adoc

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,23 @@ include::modules/machineset-creating-azure-ultra-disk.adoc[leveloffset=+2]
5353
//Troubleshooting resources for compute machine sets that enable ultra disks
5454
include::modules/machineset-troubleshooting-azure-ultra-disk.adoc[leveloffset=+2]
5555

56+
== Performance plus for Azure Disk
57+
By enabling performance plus, the Input/Output Operations Per Second (IOPS) and throughput limits can be increased for the following types of disks that are 513 GiB, and larger:
58+
59+
* Azure Premium solid-state drives (SSD)
60+
61+
* Standard SSDs
62+
63+
* Standard hard disk drives (HDD)
64+
65+
To see what the increased limits are for IOPS and throughput, consult the columns that begin with *Expanded* in the tables in link:https://learn.microsoft.com/en-us/azure/virtual-machines/disks-scalability-targets[Scalability and performance targets for VM disks].
66+
67+
include::modules/persistent-storage-csi-azure-disk-perf-plus-limits.adoc[leveloffset=+2]
68+
69+
include::modules/persistent-storage-csi-azure-disk-perf-plus-create-new-disk.adoc[leveloffset=+2]
70+
71+
include::modules/persistent-storage-csi-azure-disk-perf-plus-from-snapshots.adoc[leveloffset=+2]
72+
5673
[id="additional-resources_persistent-storage-csi-azure"]
5774
[role="_additional-resources"]
5875
== Additional resources

0 commit comments

Comments
 (0)