docs/doc/source/usertasks/kubernetes/kubernetes-user-tutorials-create-readwriteonce-persistent-volume-claims.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

3.1 KiB

Create ReadWriteOnce Persistent Volume Claims

Container images have an ephemeral file system by default. For data to survive beyond the lifetime of a container, it can read and write files to a persistent volume obtained with a Persistent Volume Claim (PVC) created to provide persistent storage.

For the use case of a single container mounting a specific , create a PVC with accessMode of ReadWriteOnce (RWO).

The following steps show an example of creating two 1GB with ReadWriteOnce accessMode.

  1. Create the rwo-test-claim1 Persistent Volume Claim.
    1. Create a yaml file defining the claim and its attributes.

      For example:

      ~(keystone_admin)]$
      cat <<EOF > rwo-claim1.yaml
      kind: PersistentVolumeClaim
      apiVersion: v1
      metadata:
        name: rwo-test-claim1
      spec:
        accessModes:
        - ReadWriteOnce
        resources:
          requests:
            storage: 1Gi
        storageClassName: general
      EOF
    2. Apply the settings created above.

      ~(keystone_admin)]$ kubectl apply -f rwo-claim1.yaml
      persistentvolumeclaim/rwo-test-claim1 created
  2. Create the rwo-test-claim2 Persistent Volume Claim.
    1. Create a yaml file defining the claim and its attributes.

      For example:

      ~(keystone_admin)]$ cat <<EOF > rwo-claim2.yaml
      kind: PersistentVolumeClaim
      apiVersion: v1
      metadata:
        name: rwo-test-claim2
      spec:
        accessModes:
        - ReadWriteOnce
        resources:
          requests:
            storage: 1Gi
        storageClassName: general
      EOF
    2. Apply the settings created above.

      ~(keystone_admin)]$ kubectl apply -f rwo-claim2.yaml
      persistentvolumeclaim/rwo-test-claim2 created

Result: Two 1GB Persistent Volume Claims have been created. You can view the PVCs using the following command.

~(keystone_admin)]$ kubectl get persistentvolumeclaims

NAME              STATUS   VOLUME       CAPACITY   ACCESS MODES  STORAGECLASS
rwo-test-claim1   Bound    pvc-08d8..   1Gi        RWO            general
rwo-test-claim2   Bound    pvc-af10..   1Gi        RWO            general
~(keystone_admin)]$ kubectl get persistentvolume

NAME      CAPACITY ACCESS.. RECLAIM.. STATUS CLAIM                   STORAGECLASS
pvc-08d8.. 1Gi      RWO       Delete    Bound  default/rwo-test-claim1 general
pvc-af10.. 1Gi      RWO       Delete    Bound  default/rwo-test-claim2 general