-
Notifications
You must be signed in to change notification settings - Fork 1.8k
OSDOCS-15304#Performance plus for Azure Disk #96181
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
// | ||
// Module included in the following assemblies: | ||
// | ||
// * storage/container_storage_interface/persistent-storage-csi-azure.adoc | ||
// | ||
|
||
:_mod-docs-content-type: PROCEDURE | ||
[id="persistent-storage-csi-azure-disk-perf-plus-create-new-disk_{context}"] | ||
= Enabling performance plus by snapshot or cloning | ||
|
||
Normally, performance plus can be enabled only on new disks. For a workaround, you can use this procedure. | ||
|
||
.Prerequisites | ||
|
||
* Access to a Microsoft Azure cluster with cluster-admin privileges. | ||
|
||
* Have created a persistent volume that is backed by an Azure disk with performance plus enabled | ||
|
||
.Procedure | ||
To enable performance plus on a disk that does not currently have it enabled it: | ||
|
||
. Create a snapshot of the existing performance plus disk. | ||
|
||
. Provision a new disk from that snapshot using a storage class with `enablePerformancePlus` set to "true". | ||
|
||
Or | ||
|
||
* Clone the persistent volume claim (PVC) using a storage class with `enablePerformancePlus` set to "true" to create a new disk clone. |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
// | ||
// Module included in the following assemblies: | ||
// | ||
// * storage/container_storage_interface/persistent-storage-csi-azure.adoc | ||
// | ||
|
||
:_mod-docs-content-type: CONCEPT | ||
[id="persistent-storage-csi-azure-disk-perf-plus-limits_{context}"] | ||
= Limitations | ||
|
||
Performance plus for Azure Disk has the following limitations: | ||
|
||
* Can be enabled only on Standard HDD, Standard SSD, and Premium SSD managed disks that are 513 GiB or larger. | ||
+ | ||
[IMPORTANT] | ||
==== | ||
If you request a smaller value, the disk size is rounded up to 513GiB. | ||
==== | ||
|
||
* Can be enabled only on new disks. For a workaround, see the following topic _Enabling performance plus on new disks_. |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
// | ||
// Module included in the following assemblies: | ||
// | ||
// * storage/container_storage_interface/persistent-storage-csi-azure.adoc | ||
// | ||
|
||
:_mod-docs-content-type: CONCEPT | ||
[id="persistent-storage-csi-azure-disk-perf-plus-overview_{context}"] | ||
= Overview | ||
|
||
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: | ||
|
||
* Azure Premium solid-state drives (SSD) | ||
|
||
* Standard SSDs | ||
|
||
* Standard hard disk drives (HDD) |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
// | ||
// Module included in the following assemblies: | ||
// | ||
// * storage/container_storage_interface/persistent-storage-csi-azure.adoc | ||
// | ||
|
||
:_mod-docs-content-type: PROCEDURE | ||
[id="persistent-storage-csi-azure-disk-perf-plus-sc_{context}"] | ||
= Creating a storage class to use performance plus enhanced disks | ||
|
||
The following procedure explains how to create a storage class to use performance plus enhanced Azure disks. | ||
|
||
.Prerequisites | ||
|
||
* Access to a Microsoft Azure cluster with cluster-admin privileges. | ||
|
||
* Access to an Azure disk with performance plus enabled. | ||
+ | ||
For information about enabling performance plus on disks, see the Microsoft Azure storage documentation. | ||
|
||
.Procedure | ||
|
||
To create a storage class to use performance plus enhanced disks: | ||
|
||
. Create a storage class using the following example YAML file: | ||
+ | ||
.Example storage class YAML file | ||
[resource,yaml] | ||
---- | ||
apiVersion: storage.k8s.io/v1 | ||
kind: StorageClass | ||
metadata: | ||
name: <azure-disk-performance-plus-sc> <1> | ||
provisioner: disk.csi.azure.com <2> | ||
parameters: | ||
skuName: Premium_LRS <3> | ||
cachingMode: ReadOnly | ||
enablePerformancePlus: "true" <4> | ||
reclaimPolicy: Delete | ||
volumeBindingMode: WaitForFirstConsumer | ||
allowVolumeExpansion: true | ||
---- | ||
<1> Name of the storage class. | ||
<2> Specifies the Azure Disk Container Storage Interface (CSI) driver provisioner. | ||
<3> Specifies the Azure disk type SKU. In this example, `Premium_LRS` for Premium SSD Locally Redundant Storage. | ||
<4> Enables Azure Disk performance plus. | ||
|
||
. Create a persistent volume claim (PVC) that uses this storage class by using the following example YAML file: | ||
+ | ||
.Example PVC YAML file | ||
[source,yaml] | ||
---- | ||
apiVersion: v1 | ||
kind: PersistentVolumeClaim | ||
metadata: | ||
name: <my-azure-pvc> <1> | ||
spec: | ||
accessModes: | ||
- ReadWriteOnce | ||
storageClassName: <azure-disk-performance-plus-sc> <2> | ||
resources: | ||
requests: | ||
storage: 513Gi <3> | ||
---- | ||
<1> PVC name. | ||
<2> Reference the performance plus storage class. | ||
<3> Ensure that the disk size requested is 513 GiB, or larger, for performance plus to take effect. | ||
|
||
|
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -53,8 +53,21 @@ include::modules/machineset-creating-azure-ultra-disk.adoc[leveloffset=+2] | |||||
//Troubleshooting resources for compute machine sets that enable ultra disks | ||||||
include::modules/machineset-troubleshooting-azure-ultra-disk.adoc[leveloffset=+2] | ||||||
|
||||||
== Performance plus for Azure Disk | ||||||
|
||||||
include::modules/persistent-storage-csi-azure-disk-perf-plus-overview.adoc[leveloffset=+2] | ||||||
|
||||||
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]. | ||||||
|
||||||
include::modules/persistent-storage-csi-azure-disk-perf-plus-limits.adoc[leveloffset=+2] | ||||||
|
||||||
include::modules/persistent-storage-csi-azure-disk-perf-plus-create-new-disk.adoc[leveloffset=+2] | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @lpettyjo Thanks for the update. The content itself looks solid! I have a couple of suggestions regarding the structure and naming to improve clarity.
Suggested change
Let me know if it makes sense to you, thanks! There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Agree to put the storage class creation chapter before the snap/clone |
||||||
|
||||||
include::modules/persistent-storage-csi-azure-disk-perf-plus-sc.adoc[leveloffset=+2] | ||||||
|
||||||
[id="additional-resources_persistent-storage-csi-azure"] | ||||||
[role="_additional-resources"] | ||||||
== Additional resources | ||||||
* xref:../../storage/persistent_storage/persistent-storage-azure.adoc#persistent-storage-using-azure[Persistent storage using Azure Disk] | ||||||
* xref:../../storage/container_storage_interface/persistent-storage-csi.adoc#persistent-storage-csi[Configuring CSI volumes] | ||||||
* link:https://learn.microsoft.com/azure/[Microsoft Azure storage documentation] |
Uh oh!
There was an error while loading. Please reload this page.