Skip to content

Commit eeb4426

Browse files
authored
Merge pull request #60556 from lpettyjo/OSDOCS-6116
OSDOCS#6116: Add RWOP access mode
2 parents b0f9c25 + c4ada11 commit eeb4426

File tree

1 file changed

+51
-46
lines changed

1 file changed

+51
-46
lines changed

modules/storage-persistent-storage-pv.adoc

Lines changed: 51 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,19 @@ Direct matches are always attempted first. The volume's modes must match or cont
9595

9696
All volumes with the same modes are grouped, and then sorted by size, smallest to largest. The binder gets the group with matching modes and iterates over each, in size order, until one size matches.
9797

98+
ifndef::microshift[]
99+
[IMPORTANT]
100+
====
101+
Volume access modes describe volume capabilities. They are not enforced constraints. The storage provider is responsible for runtime errors resulting from invalid use of the resource. Errors in the provider show up at runtime as mount errors.
102+
103+
ifndef::openshift-dedicated,openshift-rosa[]
104+
For example, NFS offers `ReadWriteOnce` access mode. If you want to use the volume's ROX capability, mark the claims as `ReadOnlyMany`.
105+
106+
iSCSI and Fibre Channel volumes do not currently have any fencing mechanisms. You must ensure the volumes are only used by one node at a time. In certain situations, such as draining a node, the volumes can be used simultaneously by two nodes. Before draining the node, delete the pods that use the volumes.
107+
endif::openshift-dedicated,openshift-rosa[]
108+
====
109+
endif::microshift[]
110+
98111
The following table lists the access modes:
99112

100113
.Access modes
@@ -104,6 +117,9 @@ The following table lists the access modes:
104117
|ReadWriteOnce
105118
|`RWO`
106119
|The volume can be mounted as read-write by a single node.
120+
|ReadWriteOncePod ^[1]^
121+
|`RWOP`
122+
|The volume can be mounted as read-write by a single pod on a single node.
107123
ifdef::openshift-enterprise,openshift-webscale,openshift-origin[]
108124
|ReadOnlyMany
109125
|`ROX`
@@ -113,69 +129,58 @@ ifdef::openshift-enterprise,openshift-webscale,openshift-origin[]
113129
|The volume can be mounted as read-write by many nodes.
114130
endif::[]
115131
|===
132+
--
133+
1. ReadWriteOncePod access mode for persistent volumes is a Technology Preview feature.
134+
--
135+
:FeatureName: ReadWriteOncePod access mode for persistent volumes
136+
include::snippets/technology-preview.adoc[leveloffset=+1]
116137
endif::microshift[]
117138

118139
ifndef::microshift[]
119-
[IMPORTANT]
120-
====
121-
Volume access modes are descriptors of volume capabilities. They are not enforced constraints. The storage provider is responsible for runtime errors resulting from invalid use of the resource.
122-
123-
ifndef::openshift-dedicated,openshift-rosa[]
124-
For example, NFS offers `ReadWriteOnce` access mode. You must
125-
mark the claims as `read-only` if you want to use the volume's
126-
ROX capability. Errors in the provider show up at runtime as mount errors.
127-
128-
iSCSI and Fibre Channel volumes do not currently have any fencing
129-
mechanisms. You must ensure the volumes are only used by one node at a
130-
time. In certain situations, such as draining a node, the volumes can be
131-
used simultaneously by two nodes. Before draining the node, first ensure
132-
the pods that use these volumes are deleted.
133-
endif::openshift-dedicated,openshift-rosa[]
134-
====
135-
endif::microshift[]
136-
137-
ifndef::microshift[]
138-
.Supported access modes for PVs
139-
[cols=",^v,^v,^v", width="100%",options="header"]
140+
.Supported access modes for persistent volumes
141+
[cols=",^v,^v,^v,^v", width="100%",options="header"]
140142
|===
141-
|Volume plugin |ReadWriteOnce ^[1]^ |ReadOnlyMany |ReadWriteMany
143+
|Volume plugin |ReadWriteOnce ^[1]^ | ReadWriteOncePod ^[2]^ |ReadOnlyMany|ReadWriteMany
142144
ifdef::openshift-enterprise,openshift-webscale,openshift-origin[]
143-
|AliCloud Disk | ✅ | - | -
145+
|AliCloud Disk | ✅ |✅ | - | -
144146
endif::[]
145-
|AWS EBS ^[2]^ | ✅ | - | -
146-
|AWS EFS | ✅ | ✅ | ✅
147+
|AWS EBS ^[3]^ | ✅ | ✅ | - | -
148+
|AWS EFS | ✅ | ✅ | ✅ | ✅
147149
ifdef::openshift-enterprise,openshift-webscale,openshift-origin[]
148-
|Azure File | ✅ | ✅ | ✅
149-
|Azure Disk | ✅ | - | -
150-
//|Ceph RBD | ✅ | ✅ | -
151-
//|CephFS | ✅ | ✅ | ✅
152-
|Cinder | ✅ | - | -
153-
|Fibre Channel | ✅ | ✅ | -
150+
|Azure File | ✅ |✅ | ✅ | ✅
151+
|Azure Disk | ✅ | ✅ | - | -
152+
//|Ceph RBD | ✅ | ✅ |✅ | -
153+
//|CephFS | ✅ | ✅ | ✅ |
154+
|Cinder | ✅ | ✅ |- | -
155+
|Fibre Channel | ✅ | ✅ |✅ | -
154156
endif::[]
155157
ifndef::openshift-rosa[]
156-
|GCP Persistent Disk | ✅ | - | -
157-
|GCP Filestore | ✅ | ✅ | ✅
158+
|GCP Persistent Disk | ✅ |✅ | - | -
159+
|GCP Filestore | ✅ | ✅ |✅ |
158160
endif::openshift-rosa[]
159161
ifdef::openshift-enterprise,openshift-webscale,openshift-origin[]
160-
//|GlusterFS | ✅ | ✅ | ✅
161-
|HostPath | ✅ | - | -
162-
|{ibmpowerProductName} Virtual Server Disk | ✅ | ✅ | ✅
163-
|IBM VPC Disk | ✅ | - | -
164-
|iSCSI | ✅ | ✅ | -
165-
|Local volume | ✅ | - | -
166-
|NFS | ✅ | ✅ | ✅
167-
|OpenStack Manila | - | - | ✅
168-
|{rh-storage-first} | ✅ | - | ✅
169-
|VMware vSphere | ✅ | - | ✅ ^[3]^
162+
//|GlusterFS | ✅ |✅ | ✅ | ✅
163+
|HostPath | ✅ |✅ | - | -
164+
|{ibmpowerProductName} Virtual Server Disk | ✅ |✅ | ✅ | ✅
165+
|IBM VPC Disk | ✅ |✅ | - | -
166+
|iSCSI | ✅ | ✅ |✅ | -
167+
|Local volume | ✅ |✅ | - | -
168+
|NFS | ✅ | ✅ |✅ |
169+
|OpenStack Manila | - |✅ | - | ✅
170+
|{rh-storage-first} | ✅ |✅ | - | ✅
171+
|VMware vSphere | ✅ |✅ | - | ✅ ^[4]^
170172
endif::[]
171-
172173
|===
173174
[.small]
174175
--
175176
1. ReadWriteOnce (RWO) volumes cannot be mounted on multiple nodes. If a node fails, the system does not allow the attached RWO volume to be mounted on a new node because it is already assigned to the failed node. If you encounter a multi-attach error message as a result, force delete the pod on a shutdown or crashed node to avoid data loss in critical workloads, such as when dynamic persistent volumes are attached.
176-
2. Use a recreate deployment strategy for pods that rely on Amazon EBS.
177+
178+
2. ReadWriteOncePod is a Technology Preview feature.
179+
180+
3. Use a recreate deployment strategy for pods that rely on AWS EBS.
181+
177182
ifndef::openshift-dedicated,openshift-rosa[]
178-
3. If the underlying vSphere environment supports the vSAN file service, then the vSphere Container Storage Interface (CSI) Driver Operator installed by
183+
4. If the underlying vSphere environment supports the vSAN file service, then the vSphere Container Storage Interface (CSI) Driver Operator installed by
179184
{product-title} supports provisioning of ReadWriteMany (RWX) volumes. If you do not have vSAN file service configured, and you request RWX, the volume fails to get created and an error is logged. For more information, see "Using Container Storage Interface" -> "VMware vSphere CSI Driver Operator".
180185
endif::openshift-dedicated,openshift-rosa[]
181186
// GCE Persistent Disks, or Openstack Cinder PVs.

0 commit comments

Comments
 (0)