Skip to content

Commit f62d2b4

Browse files
authored
Merge pull request #66211 from lpettyjo/enterprise-4.13
[enterprise-4.13] OCPBUGS-17558 & 17559: Adding NFS support to Azure File CSI
2 parents 0e8faa7 + 442e0c8 commit f62d2b4

File tree

2 files changed

+43
-1
lines changed

2 files changed

+43
-1
lines changed
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * storage/container_storage_interface/persistent_storage-csi-azure-file.adoc
4+
//
5+
6+
:_content-type: CONCEPT
7+
[id="persistent-storage-csi-azure-file-nfs_{context}"]
8+
= NFS support
9+
10+
{product-title} supports the Azure File Container Storage Interface (CSI) Driver Operator with Network File System (NFS) with the following restrictions:
11+
12+
* Creating pods with Azure File NFS volumes that are scheduled to the control plane node causes the mount to be denied.
13+
+
14+
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.
15+
16+
* FS Group policy behavior:
17+
+
18+
[IMPORTANT]
19+
=====
20+
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.
21+
=====
22+
23+
* 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:
24+
+
25+
[source, yaml]
26+
----
27+
apiVersion: storage.k8s.io/v1
28+
kind: StorageClass
29+
metadata:
30+
name: <storage-class-name> <1>
31+
provisioner: file.csi.azure.com <2>
32+
parameters:
33+
protocol: nfs <3>
34+
skuName: Premium_LRS # available values: Premium_LRS, Premium_ZRS
35+
mountOptions:
36+
- nconnect=4
37+
----
38+
<1> Storage class name.
39+
<2> Specifies the Azure File CSI provider.
40+
<3> Specifies NFS as the storage backend protocol.

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

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ To create CSI-provisioned PVs that mount to Azure File storage assets, {product-
1717

1818
* The _Azure File CSI driver_ enables you to create and mount Azure File PVs. The Azure File CSI driver supports dynamic volume provisioning by allowing storage volumes to be created on-demand, eliminating the need for cluster administrators to pre-provision storage.
1919

20-
Azure File CSI Driver Operator does not support:
20+
Azure File CSI Driver Operator does _not_ support:
2121

2222
* Virtual hard disks (VHD)
2323

@@ -27,6 +27,8 @@ Azure File CSI Driver Operator does not support:
2727

2828
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].
2929

30+
include::modules/persistent-storage-csi-azure-file-nfs.adoc[leveloffset=+1]
31+
3032
include::modules/persistent-storage-csi-about.adoc[leveloffset=+1]
3133

3234
.Additional resources

0 commit comments

Comments
 (0)