From 10af2d5d344778a7c507a99e96c29d77d08fdfca Mon Sep 17 00:00:00 2001 From: Lisa Pettyjohn Date: Wed, 28 Jun 2023 09:32:12 -0400 Subject: [PATCH] OSDOCS#6633 - Add NFS support for Azure File CSI driver --- ...persistent-storage-csi-azure-file-nfs.adoc | 39 +++++++++++++++++++ .../persistent-storage-csi-azure-file.adoc | 6 +-- 2 files changed, 42 insertions(+), 3 deletions(-) create mode 100644 modules/persistent-storage-csi-azure-file-nfs.adoc diff --git a/modules/persistent-storage-csi-azure-file-nfs.adoc b/modules/persistent-storage-csi-azure-file-nfs.adoc new file mode 100644 index 0000000000..0799ef74ad --- /dev/null +++ b/modules/persistent-storage-csi-azure-file-nfs.adoc @@ -0,0 +1,39 @@ +// Module included in the following assemblies: +// +// * storage/container_storage_interface/persistent_storage-csi-azure-file.adoc +// + +:_content-type: CONCEPT +[id="persistent-storage-csi-azure-file-nfs_{context}"] += NFS support + +{product-title} 4.14, and later, supports Azure File Container Storage Interface (CSI) Driver Operator with Network File System (NFS) with the following caveats: + +* Creating pods with Azure File NFS volumes that are scheduled to the control plane node causes the mount to be denied. ++ +To work around this issue: If your control plane nodes are schedulable, and the pods can run on worker nodes, use `nodeSelector` or Affinity to schedule the pod in worker nodes. + +* FS Group policy behavior: ++ +[IMPORTANT] +===== +Azure File CSI with NFS does not honor the fsGroupChangePolicy requested by pods. Azure File CSI with NFS applies a default OnRootMismatch FS Group policy regardless of the policy requested by the pod. +===== +* The Azure File CSI Operator does not automatically create a storage class for NFS. You must create it manually. Use a file similar to the following: ++ +[source, yaml] +---- +apiVersion: storage.k8s.io/v1 +kind: StorageClass +metadata: + name: <1> +provisioner: file.csi.azure.com <2> +parameters: + protocol: nfs <3> + skuName: Premium_LRS # available values: Premium_LRS, Premium_ZRS +mountOptions: + - nconnect=4 +---- +<1> Storage class name. +<2> Specifies the Azure File CSI provider. +<3> Specifies NFS as the storage backend protocol. diff --git a/storage/container_storage_interface/persistent-storage-csi-azure-file.adoc b/storage/container_storage_interface/persistent-storage-csi-azure-file.adoc index 26ee9db2c5..2b1f531007 100644 --- a/storage/container_storage_interface/persistent-storage-csi-azure-file.adoc +++ b/storage/container_storage_interface/persistent-storage-csi-azure-file.adoc @@ -21,12 +21,12 @@ Azure File CSI Driver Operator does not support: * Virtual hard disks (VHD) -* Network File System (NFS): {product-title} does not deploy a NFS-backed storage class. - -* Running on nodes with FIPS mode enabled. +* Running on nodes with Federal Information Processing Standard (FIPS) mode enabled for Server Message Block (SMB) file share. However, Network File System (NFS) does support FIPS mode. For more information about supported features, see xref:../../storage/container_storage_interface/persistent-storage-csi.adoc#csi-drivers-supported_persistent-storage-csi[Supported CSI drivers and features]. +include::modules/persistent-storage-csi-azure-file-nfs.adoc[leveloffset=+1] + include::modules/persistent-storage-csi-about.adoc[leveloffset=+1] .Additional resources