Uploaded image for project: 'OpenShift Virtualization'
  1. OpenShift Virtualization
  2. CNV-32695

[2237287] portworx: disk.img size is smaller than requested

XMLWordPrintable

    • False
    • Hide

      None

      Show
      None
    • False
    • ASSIGNED
    • No
    • Hide
      If you use Portworx as your storage solution on AWS and create a VM disk image, the created image might be smaller than expected due to the filesystem overhead being accounted for twice. (BZ#2237287)

      As a workaround, you can manually expand the Persistent Volume Claim (PVC) to increase the available space after the initial provisioning process completes.
      Show
      If you use Portworx as your storage solution on AWS and create a VM disk image, the created image might be smaller than expected due to the filesystem overhead being accounted for twice. (BZ#2237287) As a workaround, you can manually expand the Persistent Volume Claim (PVC) to increase the available space after the initial provisioning process completes.
    • Known Issue
    • Done
    • ---
    • ---
    • Storage Core Sprint 248
    • High

      Description of problem:
      disk.img size is smaller than requested on 'px-csi-db-shared' storage class with

      {RWX, FS}

      when creating a 13Gi DV/PVC.

      Version-Release number of selected component (if applicable):
      4.14

      How reproducible:
      Always

      Steps to Reproduce:

      1. Create a DV with 13Gi storage request:

      apiVersion: cdi.kubevirt.io/v1beta1
      kind: DataVolume
      metadata:
        name: cnv-6536
        namespace: cdi-import-test-import-htt
      spec:
        contentType: kubevirt
        source:
          http:
            certConfigMap: internal-https-configmap
            url: https://internal-http.cnv-tests-utilities/cirros-qcow2.img
        storage:
          resources:
            requests:
              storage: 13Gi
          storageClassName: px-csi-db-shared

      2. Create a pod that uses this PVC (attaching the yaml)

      3. Check the disk.img virtual size, see it's 12G instead of 13Gi:

      $ oc exec cnv-6536-pod --namespace=cdi-import-test-import-htt – qemu-img info /pvc/disk.img
      image: /pvc/disk.img
      file format: raw
      virtual size: 12G (13153337344 bytes)
      disk size: 13M

      4. See the reported PVC capacity is 14Gi:

      $ oc get pvc -n cdi-import-test-import-htt
      NAME       STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS       AGE
      cnv-6536   Bound    pvc-292dbf65-8a7b-4e11-a27e-f0268858d160   14Gi       RWX            px-csi-db-shared   46m

      $ oc get pvc -n cdi-import-test-import-htt cnv-6536 -oyaml
      apiVersion: v1
      kind: PersistentVolumeClaim
      metadata:
        annotations:
          cdi.kubevirt.io/storage.condition.running: "false"
          cdi.kubevirt.io/storage.condition.running.message: Import Complete
          cdi.kubevirt.io/storage.condition.running.reason: Completed
          cdi.kubevirt.io/storage.contentType: kubevirt
          cdi.kubevirt.io/storage.pod.phase: Succeeded
          cdi.kubevirt.io/storage.pod.restarts: "1"
          cdi.kubevirt.io/storage.populator.progress: 100.0%
          cdi.kubevirt.io/storage.preallocation.requested: "false"
          cdi.kubevirt.io/storage.usePopulator: "true"
          pv.kubernetes.io/bind-completed: "yes"
          pv.kubernetes.io/bound-by-controller: "yes"
          volume.beta.kubernetes.io/storage-provisioner: pxd.portworx.com
          volume.kubernetes.io/storage-provisioner: pxd.portworx.com
        creationTimestamp: "2023-09-04T13:19:23Z"
        finalizers:
        - kubernetes.io/pvc-protection
        labels:
          alerts.k8s.io/KubePersistentVolumeFillingUp: disabled
          app: containerized-data-importer
          app.kubernetes.io/component: storage
          app.kubernetes.io/managed-by: cdi-controller
          app.kubernetes.io/part-of: hyperconverged-cluster
          app.kubernetes.io/version: 4.14.0
          created-by-dynamic-class-creator: "Yes"
        name: cnv-6536
        namespace: cdi-import-test-import-htt
        ownerReferences:
        - apiVersion: cdi.kubevirt.io/v1beta1
          blockOwnerDeletion: true
          controller: true
          kind: DataVolume
          name: cnv-6536
          uid: cb1f6397-bd7b-45de-bd42-86185ceebfd4
        resourceVersion: "340909"
        uid: 824bb4e9-1132-4be8-a282-65b7e3acb31d
      spec:
        accessModes:
        - ReadWriteMany
        dataSource:
          apiGroup: cdi.kubevirt.io
          kind: VolumeImportSource
          name: volume-import-source-cb1f6397-bd7b-45de-bd42-86185ceebfd4
        dataSourceRef:
          apiGroup: cdi.kubevirt.io
          kind: VolumeImportSource
          name: volume-import-source-cb1f6397-bd7b-45de-bd42-86185ceebfd4
        resources:
          requests:
            storage: "14771051548"
        storageClassName: px-csi-db-shared
        volumeMode: Filesystem
        volumeName: pvc-292dbf65-8a7b-4e11-a27e-f0268858d160
      status:
        accessModes:
        - ReadWriteMany
        capacity:
          storage: 14Gi
        phase: Bound

      Actual results:
      Virtual image size is smaller than requested

      Expected results:
      Virtual image size is the same as requested

      Additional info:
      We don't see this issue with the requested size 64Mi and 1Gi - virtual image size is the same as requested.

            akalenyu Alex Kalenyuk
            jpeimer@redhat.com Jenia Peimer
            Jenia Peimer Jenia Peimer
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: