.. xco1564696647432
.. _storage-configuration-create-persistent-volume-claims:

===============================
Create 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 |PVC| created to provide persistent 
storage.

.. rubric:: |context|

The following steps create two 1Gb persistent volume claims.

.. rubric:: |proc|


.. _storage-configuration-create-persistent-volume-claims-d891e32:

#.  Create the **test-claim1** persistent volume claim.


    #.  Create a yaml file defining the claim and its attributes.

        For example:

        .. code-block:: none

            ~(keystone_admin)$ cat <<EOF > claim1.yaml
            kind: PersistentVolumeClaim
            apiVersion: v1
            metadata:
              name: test-claim1
            spec:
              accessModes:
                - ReadWriteOnce
              resources:
                requests:
                  storage: 1Gi
              storageClassName: general
            EOF

    #.  Apply the settings created above.

        .. code-block:: none

            ~(keystone_admin)$ kubectl apply -f claim1.yaml
            persistentvolumeclaim/test-claim1 created



#.  Create the **test-claim2** persistent volume claim.


    #.  Create a yaml file defining the claim and its attributes.

        For example:

        .. code-block:: none

            ~(keystone_admin)$ cat <<EOF > claim2.yaml
            kind: PersistentVolumeClaim
            apiVersion: v1
            metadata:
              name: test-claim2
            spec:
              accessModes:
                - ReadWriteOnce
              resources:
                requests:
                  storage: 1Gi
              storageClassName: general
            EOF


    #.  Apply the settings created above.

        .. code-block:: none

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




.. rubric:: |result|

Two 1Gb persistent volume claims have been created. You can view them with
the following command.

.. code-block:: none

    ~(keystone_admin)$ kubectl get persistentvolumeclaims
    NAME          STATUS   VOLUME      CAPACITY   ACCESS MODES   STORAGECLASS   AGE
    test-claim1   Bound    pvc-aaca..  1Gi        RWO            general        2m56s
    test-claim2   Bound    pvc-e93f..  1Gi        RWO            general        68s