Add RBD CSI migration section to the storage volumes guide
Kubernetes adds the RBD CSI migration functionality via CSI migration translation lib. Ref# kubernetes/kubernetes#95361 This commit add the migration details to volumes.md and feature-gates.md Signed-off-by: Humble Chirammal <hchiramm@redhat.com>pull/30533/head
parent
c688bcd8e6
commit
280229b0ec
|
@ -956,11 +956,11 @@ GitHub project has [instructions](https://github.com/quobyte/quobyte-csi#quobyte
|
|||
### rbd
|
||||
|
||||
An `rbd` volume allows a
|
||||
[Rados Block Device](https://docs.ceph.com/en/latest/rbd/) (RBD) volume to mount into your
|
||||
Pod. Unlike `emptyDir`, which is erased when a pod is removed, the contents of
|
||||
an `rbd` volume are preserved and the volume is unmounted. This
|
||||
means that a RBD volume can be pre-populated with data, and that data can
|
||||
be shared between pods.
|
||||
[Rados Block Device](https://docs.ceph.com/en/latest/rbd/) (RBD) volume to mount
|
||||
into your Pod. Unlike `emptyDir`, which is erased when a pod is removed, the
|
||||
contents of an `rbd` volume are preserved and the volume is unmounted. This
|
||||
means that a RBD volume can be pre-populated with data, and that data can be
|
||||
shared between pods.
|
||||
|
||||
{{< note >}}
|
||||
You must have a Ceph installation running before you can use RBD.
|
||||
|
@ -975,6 +975,38 @@ Simultaneous writers are not allowed.
|
|||
See the [RBD example](https://github.com/kubernetes/examples/tree/master/volumes/rbd)
|
||||
for more details.
|
||||
|
||||
#### RBD CSI migration {#rbd-csi-migration}
|
||||
|
||||
{{< feature-state for_k8s_version="v1.23" state="alpha" >}}
|
||||
|
||||
The `CSIMigration` feature for `RBD`, when enabled, redirects all plugin
|
||||
operations from the existing in-tree plugin to the `rbd.csi.ceph.com` {{<
|
||||
glossary_tooltip text="CSI" term_id="csi" >}} driver. In order to use this
|
||||
feature, the
|
||||
[Ceph CSI driver](https://github.com/ceph/ceph-csi)
|
||||
must be installed on the cluster and the `CSIMigration` and `CSIMigrationRBD`
|
||||
[feature gates](/docs/reference/command-line-tools-reference/feature-gates/)
|
||||
must be enabled.
|
||||
|
||||
{{< note >}}
|
||||
|
||||
As a Kubernetes cluster operator that administers storage, here are the
|
||||
prerequisites that you must complete before you attempt migration to the
|
||||
RBD CSI driver:
|
||||
|
||||
* You must install the Ceph CSI driver (`rbd.csi.ceph.com`), v3.5.0 or above,
|
||||
into your Kubernetes cluster.
|
||||
* considering the `clusterID` field is a required parameter for CSI driver for
|
||||
its operations, but in-tree StorageClass has `monitors` field as a required
|
||||
parameter, a Kubernetes storage admin has to create a clusterID based on the
|
||||
monitors hash ( ex:`#echo -n
|
||||
'<monitors_string>' | md5sum`) in the CSI config map and keep the monitors
|
||||
under this clusterID configuration.
|
||||
* Also, if the value of `adminId` in the in-tree Storageclass is different from
|
||||
`admin`, the `adminSecretName` mentioned in the in-tree Storageclass has to be
|
||||
patched with the base64 value of the `adminId` parameter value, otherwise this
|
||||
step can be skipped. {{< /note >}}
|
||||
|
||||
### secret
|
||||
|
||||
A `secret` volume is used to pass sensitive information, such as passwords, to
|
||||
|
|
|
@ -81,6 +81,7 @@ different Kubernetes components.
|
|||
| `CSIMigrationOpenStack` | `false` | Alpha | 1.14 | 1.17 |
|
||||
| `CSIMigrationOpenStack` | `true` | Beta | 1.18 | |
|
||||
| `CSIMigrationvSphere` | `false` | Beta | 1.19 | |
|
||||
| `CSIMigrationRBD` | `false` | Alpha | 1.23 | |
|
||||
| `CSIStorageCapacity` | `false` | Alpha | 1.19 | 1.20 |
|
||||
| `CSIStorageCapacity` | `true` | Beta | 1.21 | |
|
||||
| `CSIVolumeHealth` | `false` | Alpha | 1.21 | |
|
||||
|
@ -622,6 +623,13 @@ Each feature gate is designed for enabling/disabling a specific feature:
|
|||
operations from the GCE-PD in-tree plugin to PD CSI plugin. Supports falling
|
||||
back to in-tree GCE plugin if a node does not have PD CSI plugin installed and
|
||||
configured. Requires CSIMigration feature flag enabled.
|
||||
- `CSIMigrationRBD`: Enables shims and translation logic to route volume
|
||||
operations from the RBD in-tree plugin to Ceph RBD CSI plugin. Requires
|
||||
CSIMigration and CSIMigrationRBD feature flags enabled and Ceph CSI plugin
|
||||
installed and configured in the cluster. This flag has been deprecated in
|
||||
favor of the
|
||||
`InTreePluginRBDUnregister` feature flag which prevents the registration of
|
||||
in-tree RBD plugin.
|
||||
- `CSIMigrationGCEComplete`: Stops registering the GCE-PD in-tree plugin in
|
||||
kubelet and volume controllers and enables shims and translation logic to
|
||||
route volume operations from the GCE-PD in-tree plugin to PD CSI plugin.
|
||||
|
|
Loading…
Reference in New Issue