Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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.
20 changes: 20 additions & 0 deletions modules/persistent-storage-csi-azure-disk-perf-plus-limits.adoc
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_.
17 changes: 17 additions & 0 deletions modules/persistent-storage-csi-azure-disk-perf-plus-overview.adoc
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)
69 changes: 69 additions & 0 deletions modules/persistent-storage-csi-azure-disk-perf-plus-sc.adoc
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 or editing a storage class to use performance plus enhanced disks
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OpenShift does not support editing storage class parameters. The whole storage class must be deleted + re-created. It's a bit misleading to suggest that editing is somehow possible.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Customers can already have created additional SC that they can edit or unmanaged the default one but yes to avoid confusion let's keep it simple and say "Creating" only


The following procedure explains how to create a storage class, or edit an existing one, 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, or edit an existing one, to use performance plus enhanced disks:

. Create a storage class, or edit an existing one, 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
Expand Up @@ -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]

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]