IBM Support

CP4S: Increasing storage and volume expansion

Question & Answer


Question

What are the available options when a Cloud Pak for Security deployment is close to running out of data storage space?

Cause

In some instances, customers find they are collecting more data than they can store.

Answer

Some storage classes support automatic expansion and if they are running out of space, troubleshooting steps depend on the storage provider. Other storage classes might not support automatic expansion, but can still be resized by creating larger PVCs and moving the data to the new PVC. Follow the procedure to identify your storage class type.
Procedure
Verify whether the storage class of your persistent volume allows expansion. To resize a PVC, the allowVolumeExpansion field of its storage class must be set to true. It is set to true by default for many storage types, but you can use the following procedure to confirm your case.
  1. SSH into your Red Hat OpenShift cluster.
  2. Use the following command to list your persistent volumes.
    oc get pv
  3. Observe the STORAGECLASS field to identify the storage class of each volume you want to expand. In the full example output, it is the seventh column.
    Abbreviated example output:
    NAME                                       STORAGECLASS 
    image-registry-pv                          registry-nfs                
    local-pv-46a4ce33                          ocs-volume                             
    Full example output:
    NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS   CLAIM                                                          STORAGECLASS                  REASON   AGE
    image-registry-pv                          100Gi      RWX            Retain           Bound    openshift-image-registry/registry-nfs                          registry-nfs                           126d
    local-pv-46a4ce33                          4Ti        RWO            Delete           Bound    openshift-storage/ocs-deviceset-ocs-volume-0-data-1f5zz5       ocs-volume                             63d
    pvc-0278e161-241f-44f1-a504-99ba7e25087c   6520Gi     RWO            Delete           Bound    openshift-logging/elasticsearch-elasticsearch-cdm-z6os9drj-1   ocs-storagecluster-cephfs              61d
    pvc-05858a75-0a95-4e3d-ad9b-5e8f6cceb873   220Gi      RWO            Delete           Bound    cp4s/default-postgres-data-default-postgres-keeper-1           managed-nfs-storage                    126d
  4. Use the following command to list your storage classes.
    oc get sc
  5. Observe the ALLOWVOLUMEEXPANSION field: true indicates volume expansion is enabled, while false indicates it is not. In the full example output, it is the fifth column.
    Abbreviated example output:
    NAME                          PROVISIONER                                   ALLOWVOLUMEEXPANSION
    ocs-volume                    kubernetes.io/no-provisioner                  false
    registry-nfs                  kubernetes.io/no-provisioner                  true
    Full example output:
    NAME                          PROVISIONER                                   RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
    managed-nfs-storage           k8s-sigs.io/nfs-subdir-external-provisioner   Delete          Immediate              false                  127d
    ocs-storagecluster-ceph-rbd   openshift-storage.rbd.csi.ceph.com            Delete          Immediate              true                   63d
    ocs-storagecluster-ceph-rgw   openshift-storage.ceph.rook.io/bucket         Delete          Immediate              false                  63d
    ocs-storagecluster-cephfs     openshift-storage.cephfs.csi.ceph.com         Delete          Immediate              true                   63d
    ocs-volume                    kubernetes.io/no-provisioner                  Delete          WaitForFirstConsumer   false                  63d
    ocs-volume-set                kubernetes.io/no-provisioner                  Delete          WaitForFirstConsumer   false                  63d
    openshift-storage.noobaa.io   openshift-storage.noobaa.io/obc               Delete          Immediate              false                  63d
    registry-nfs                  kubernetes.io/no-provisioner                  Retain          Immediate              true                   126d
    The following storage classes support expansion:
    • AWS Elastic Block Store (EBS)
    • AzureDisk
    • AzureFile
    • Red Hat OpenStack Platform (RHOSP) Cinder
    • GCE Persistent Disk (gcePD)
    • RHOSP Manila Container Storage Interface (CSI)
       
    Note: If the storage class YAML had ALLOWVOLUMEEXPANSION set to true when the PV was created, VMware vSphere Thin storage class can support volume expansion, but it is not enabled by default. Retroactive enablement of volume expansion for Thin storage is not supported by CP4S.

    Result
    If your PVC supports volume expansion, identify your provisioner by observing the PROVISIONER field of the storage class table from the procedure. Check the provisioner's documentation for details on how they handle automatic expansion. If your PVC does not support volume expansion, but you use Couchdb, Postgres, or SOAR Postgres see the Resizing PVCs guide for instructions for how to expand those storage class types. Expansion for other storage classes, such as Thin storage, is not currently supported.

[{"Type":"MASTER","Line of Business":{"code":"LOB24","label":"Security Software"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSTDPP","label":"IBM Cloud Pak for Security"},"ARM Category":[{"code":"a8m3p0000000rbnAAA","label":"Administration Task"}],"ARM Case Number":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"}]

Document Information

Modified date:
15 September 2022

UID

ibm16576201