-
Bug
-
Resolution: Done-Errata
-
Blocker
-
CNV v4.16.0
-
None
-
0.42
-
False
-
-
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