docs/doc/source/usertasks/kubernetes/kubernetes-user-tutorials-about-persistent-volume-support.rst
Ron Stone f125a8b892 Remove spurious escapes (r8,dsR8)
This change addresses a long-standing issue in rST documentation imported from XML.
That import process added backslash escapes in front of various characters. The three
most common being '(', ')', and '_'.
These instances are removed.

Signed-off-by: Ron Stone <ronald.stone@windriver.com>
Change-Id: Id43a9337ffcd505ccbdf072d7b29afdb5d2c997e
2023-03-01 11:19:04 +00:00

2.3 KiB

About Persistent Volume Support

Persistent Volume Claims (PVCs) are requests for storage resources in your cluster. By default, container images have an ephemeral file system. In order for containers to persist files beyond the lifetime of the container, a Persistent Volume Claim can be created to obtain a persistent volume which the container can mount and read/write files.

Management and customization tasks for Kubernetes can be accomplished by using StorageClasses set up by two Helm charts; rbd-provisioner and cephfs-provisioner. The rbd-provisioner, and cephfs-provisioner Helm charts are included in the platform-integ-apps system application, which is automatically loaded and applied as part of the installation.

PVCs are supported with the following options:

  • with accessMode of ReadWriteOnce backed by Ceph RBD
    • only one container can attach to these PVCs
    • management and customization tasks related to these PVCs are done through the rbd-provisioner Helm chart provided by platform-integ-apps
  • with accessMode of ReadWriteMany backed by CephFS
    • multiple containers can attach to these PVCs
    • management and customization tasks related to these PVCs are done through the cephfs-provisioner Helm chart provided by platform-integ-apps

After platform-integ-apps is applied the following system configurations are created:

  • Ceph Pools

    ~(keystone_admin)]$ ceph osd lspools
    kube-rbd
    kube-cephfs-data
    kube-cephfs-metadata
  • CephFS

    ~(keystone_admin)]$ ceph fs ls
    name: kube-cephfs, metadata pool: kube-cephfs-metadata, data pools: [kube-cephfs-data ]
  • Kubernetes StorageClasses

    ~(keystone_admin)]$ kubectl get sc
    NAME               PROVISIONER     RECLAIMPOLICY VOLUMEBINDINGMODE   ALLOWVOLUMEEXPANSION
    cephfs             ceph.com/cephfs Delete        Immediate           false
    general (default)  ceph.com/rbd    Delete        Immediate           false