diff --git a/modules/persistent-storage-csi-azure-disk-perf-plus-create-new-disk-by-snapshot-clone.adoc b/modules/persistent-storage-csi-azure-disk-perf-plus-create-new-disk-by-snapshot-clone.adoc new file mode 100644 index 000000000000..fb757086e931 --- /dev/null +++ b/modules/persistent-storage-csi-azure-disk-perf-plus-create-new-disk-by-snapshot-clone.adoc @@ -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-by-snapshot-clone_{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. \ No newline at end of file diff --git a/modules/persistent-storage-csi-azure-disk-perf-plus-limits.adoc b/modules/persistent-storage-csi-azure-disk-perf-plus-limits.adoc new file mode 100644 index 000000000000..b27ce74ccba9 --- /dev/null +++ b/modules/persistent-storage-csi-azure-disk-perf-plus-limits.adoc @@ -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_. \ No newline at end of file diff --git a/modules/persistent-storage-csi-azure-disk-perf-plus-overview.adoc b/modules/persistent-storage-csi-azure-disk-perf-plus-overview.adoc new file mode 100644 index 000000000000..43b5a4d1a56c --- /dev/null +++ b/modules/persistent-storage-csi-azure-disk-perf-plus-overview.adoc @@ -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) diff --git a/modules/persistent-storage-csi-azure-disk-perf-plus-sc.adoc b/modules/persistent-storage-csi-azure-disk-perf-plus-sc.adoc new file mode 100644 index 000000000000..740a0307dcc8 --- /dev/null +++ b/modules/persistent-storage-csi-azure-disk-perf-plus-sc.adoc @@ -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: <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: <1> +spec: + accessModes: + - ReadWriteOnce + storageClassName: <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. + + diff --git a/storage/container_storage_interface/persistent-storage-csi-azure.adoc b/storage/container_storage_interface/persistent-storage-csi-azure.adoc index 002dbf02ac99..59e4b575db98 100644 --- a/storage/container_storage_interface/persistent-storage-csi-azure.adoc +++ b/storage/container_storage_interface/persistent-storage-csi-azure.adoc @@ -27,6 +27,18 @@ include::modules/persistent-storage-csi-about.adoc[leveloffset=+1] include::modules/persistent-storage-csi-azure-disk-sc-zrs.adoc[leveloffset=+1] +== 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-by-snapshot-clone.adoc[leveloffset=+2] + +include::modules/persistent-storage-csi-azure-disk-perf-plus-sc.adoc[leveloffset=+2] + ifndef::openshift-rosa,openshift-dedicated[] include::modules/persistent-storage-byok.adoc[leveloffset=+1] @@ -58,3 +70,4 @@ include::modules/machineset-troubleshooting-azure-ultra-disk.adoc[leveloffset=+2 == 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]