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

Smoke tests blocker: Clone of DV to VM with DataVolumeTemplate - reports DV Succeeded instantly, but PVC is Pending

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done-Errata
    • Icon: Blocker Blocker
    • CNV v4.16.0
    • CNV v4.16.0
    • CNV Storage
    • None
    • 0.42
    • False
    • Hide

      None

      Show
      None
    • False
    • ---
    • ---
    • Storage Core Sprint 251
    • Urgent
    • No

      Description of problem:

      Create a DV
      Create a VM with DataVolumeTemplate cloning that DV (reproduced on Block-Fs, Block-Block, Fs-Fs clones)
      
      Clone works when it's DV - DV, but fails when it's DV - VM with DVTemplate

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

      4.16.0.rhel9-1427

      How reproducible:

      Always

      Steps to Reproduce:

      1. Create a DV
      
      apiVersion: cdi.kubevirt.io/v1beta1
      kind: DataVolume
      metadata:
        name: dv-cirros-block
      spec:
        contentType: kubevirt
        source:
          http:
            url: <cirros-0.4.0-x86_64-disk.qcow2>
        storage:
          resources:
            requests:
              storage: 1Gi
          storageClassName: ocs-storagecluster-ceph-rbd-virtualization
          volumeMode: Block
      2. Create a VM
      
      apiVersion: kubevirt.io/v1
      kind: VirtualMachine
      metadata:
        name: vm-with-dv-template-clone-block-to-fs
      spec:
        dataVolumeTemplates:
        - apiVersion: cdi.kubevirt.io/v1beta1
          kind: DataVolume
          metadata:
            name: dv-5608
            namespace: default
          spec:
            contentType: kubevirt
            source:
              pvc:
                name: dv-cirros-block
                namespace: default
            storage:
              resources:
                requests:
                  storage: 1084Mi
              storageClassName: ocs-storagecluster-ceph-rbd-virtualization
              volumeMode: Filesystem
        running: false
        template:
          metadata:
            labels:
              kubevirt.io/domain: vm-5608-1710837014-5502193
              kubevirt.io/vm: vm-5608-1710837014-5502193
          spec:
            domain:
              devices:
                disks:
                - disk:
                    bus: virtio
                  name: dv-disk
                rng: {}
              resources:
                requests:
                  memory: 64M
            volumes:
            - dataVolume:
                name: dv-5608
              name: dv-disk
      
      3. 
      

      Actual results:

      Target DV (dv-5608) Succeeded withing seconds
      $ oc get dv -A
      NAMESPACE                            NAME                          PHASE       PROGRESS   RESTARTS   AGE
      default                              dv-5608                       Succeeded   N/A                   19s
      default                              dv-cirros-block               Succeeded   100.0%                3m26s
      PVC stays Pending 
      $ oc get pvc
      NAME                                           STATUS    VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS                                 AGE
      dv-5608                                        Pending                                                                        ocs-storagecluster-ceph-rbd-virtualization   7m19s
      dv-cirros-block                                Bound     pvc-56028067-aed7-4365-ac91-d8e3c3124b0a   1Gi        RWX            ocs-storagecluster-ceph-rbd-virtualization   10m
      tmp-pvc-e46db4e4-a90e-4643-abd9-8b4c436f79a8   Bound     pvc-508f158d-a7ef-4fba-8d90-81be2c700d8b   2Gi        RWO            ocs-storagecluster-ceph-rbd-virtualization   7m19s
      tmp-pvc yaml:
      
      $ oc describe pvc tmp-pvc-e46db4e4-a90e-4643-abd9-8b4c436f79a8
      Name:          tmp-pvc-e46db4e4-a90e-4643-abd9-8b4c436f79a8
      Namespace:     default
      StorageClass:  ocs-storagecluster-ceph-rbd-virtualization
      Status:        Bound
      Volume:        pvc-508f158d-a7ef-4fba-8d90-81be2c700d8b
      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.16.0
                     cdi.kubevirt.io/OwnedByUID=e46db4e4-a90e-4643-abd9-8b4c436f79a8
                     kubevirt.io/created-by=566ccc72-6534-4433-bfe3-a1774ee3b3e4
      Annotations:   cdi.kubevirt.io/allowClaimAdoption: true
                     cdi.kubevirt.io/cloneFallbackReason: The volume modes of source and target are incompatible
                     cdi.kubevirt.io/clonePhase: Pending
                     cdi.kubevirt.io/cloneType: copy
                     cdi.kubevirt.io/events.source: default/dv-5608
                     cdi.kubevirt.io/events.source.kind: PersistentVolumeClaim
                     cdi.kubevirt.io/ownerUID: e46db4e4-a90e-4643-abd9-8b4c436f79a8
                     cdi.kubevirt.io/storage.bind.immediate.requested: 
                     cdi.kubevirt.io/storage.condition.running: false
                     cdi.kubevirt.io/storage.condition.running.message: Clone Complete
                     cdi.kubevirt.io/storage.condition.running.reason: Completed
                     cdi.kubevirt.io/storage.condition.source.running: true
                     cdi.kubevirt.io/storage.condition.source.running.message: Clone Complete
                     cdi.kubevirt.io/storage.condition.source.running.reason: Completed
                     cdi.kubevirt.io/storage.contentType: kubevirt
                     cdi.kubevirt.io/storage.pod.phase: Succeeded
                     cdi.kubevirt.io/storage.pod.ready: false
                     cdi.kubevirt.io/storage.pod.restarts: 0
                     cdi.kubevirt.io/storage.populator.kind: VolumeCloneSource
                     cdi.kubevirt.io/storage.preallocation.requested: false
                     cdi.kubevirt.io/storage.sourceClonePodName: 508f158d-a7ef-4fba-8d90-81be2c700d8b-source-pod
                     cdi.kubevirt.io/storage.uploadPodName: cdi-upload-tmp-pvc-e46db4e4-a90e-4643-abd9-8b4c436f79a8
                     cdi.kubevirt.io/storage.usePopulator: true
                     cdi.kubevirt.io/uploadClientName: default/dv-cirros-block-default/tmp-pvc-e46db4e4-a90e-4643-abd9-8b4c436f79a8
                     k8s.io/CloneOf: true
                     k8s.io/CloneRequest: default/dv-cirros-block
                     pv.kubernetes.io/bind-completed: yes
                     pv.kubernetes.io/bound-by-controller: yes
                     volume.beta.kubernetes.io/storage-provisioner: openshift-storage.rbd.csi.ceph.com
                     volume.kubernetes.io/storage-provisioner: openshift-storage.rbd.csi.ceph.com
      Finalizers:    [kubernetes.io/pvc-protection]
      Capacity:      2Gi
      Access Modes:  RWO
      VolumeMode:    Filesystem
      Used By:       <none>
      Events:
        Type    Reason                 Age                From                                                                                                               Message
        ----    ------                 ----               ----                                                                                                               -------
        Normal  ExternalProvisioning   10m (x2 over 10m)  persistentvolume-controller                                                                                        Waiting for a volume to be created either by the external provisioner 'openshift-storage.rbd.csi.ceph.com' or manually by the system administrator. If volume creation is delayed, please verify that the provisioner is running and correctly registered.
        Normal  Provisioning           10m                openshift-storage.rbd.csi.ceph.com_csi-rbdplugin-provisioner-b999cd67c-np26n_7b655bd1-fab0-4fdb-a4f4-846a30e64080  External provisioner is provisioning volume for claim "default/tmp-pvc-e46db4e4-a90e-4643-abd9-8b4c436f79a8"
        Normal  ProvisioningSucceeded  10m                openshift-storage.rbd.csi.ceph.com_csi-rbdplugin-provisioner-b999cd67c-np26n_7b655bd1-fab0-4fdb-a4f4-846a30e64080  Successfully provisioned volume pvc-508f158d-a7ef-4fba-8d90-81be2c700d8b
        Normal  CloneSucceeded         9m46s              clone-controller                                                                                                   Clone Complete
      
      No PV created for target DV

      Expected results:

      Clone works

      Additional info:

      Clone works when it's DV - DV, but fails when it's DV - VM with DVTemplate

            mhenriks@redhat.com Michael Henriksen
            jpeimer@redhat.com Jenia Peimer
            Jenia Peimer Jenia Peimer
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: