Bug 1927378

Summary: Migration fails with read only cdrom drive attached
Product: Container Native Virtualization (CNV) Reporter: Roman Mohr <rmohr>
Component: VirtualizationAssignee: Vladik Romanovsky <vromanso>
Status: CLOSED ERRATA QA Contact: zhe peng <zpeng>
Severity: high Docs Contact:
Priority: high    
Version: 2.6.0CC: cnv-qe-bugs, fdeutsch, ipinto, kbidarka, rnetser, sgott, vromanso, zpeng
Target Milestone: ---   
Target Release: 4.8.1   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: virt-operator-container-v4.8.1-1 hco-bundle-registry-container-v4.8.1-7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-08-24 12:48:59 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Roman Mohr 2021-02-10 15:59:02 UTC
Description of problem:

A VMI with this spec and status:


```
spec:
  domain:
    clock:
      timer:
        hpet:
          present: false
        hyperv:
          present: true
        pit:
          present: true
          tickPolicy: delay
        rtc:
          present: true
          tickPolicy: catchup
      utc: {}
    cpu:
      cores: 1
      sockets: 1
      threads: 1
    devices:
      disks:
      - bootOrder: 1
        disk:
          bus: sata
        name: rootdisk
      - cdrom:
          bus: sata
          readonly: true
          tray: closed
        name: windows-guest-tools
      inputs:
      - bus: usb
        name: tablet
        type: tablet
      interfaces:
      - masquerade: {}
        model: virtio
        name: nic-0
    features:
      acpi:
        enabled: true
      apic:
        enabled: true
      hyperv:
        relaxed:
          enabled: true
        spinlocks:
          enabled: true
          spinlocks: 8191
        vapic:
          enabled: true
    firmware:
      uuid: a165e8ce-2f67-5678-aec1-d87d4626d834
    machine:
      type: pc-q35-rhel8.2.0
    resources:
      requests:
        cpu: 100m
        memory: 4Gi
  evictionStrategy: LiveMigrate
  hostname: win10-vm-ocs
  networks:
  - name: nic-0
    pod: {}
  terminationGracePeriodSeconds: 3600
  volumes:
  - dataVolume:
      name: win10-vm-ocs-rootdisk-fmsjz
    name: rootdisk
  - containerDisk:
      image: registry.redhat.io/container-native-virtualization/virtio-win
      imagePullPolicy: Always
    name: windows-guest-tools
status:
  activePods:
    59fde113-68bf-4332-a156-b02ebe85d09e: ssp05-4fpbn-worker-0-sdgmt
  conditions:
  - lastProbeTime: null
    lastTransitionTime: null
    status: "True"
    type: LiveMigratable
  - lastProbeTime: null
    lastTransitionTime: "2021-02-10T14:41:48Z"
    status: "True"
    type: Ready
  - lastProbeTime: "2021-02-10T14:48:19Z"
    lastTransitionTime: null
    status: "True"
    type: AgentVersionNotSupported
  guestOSInfo: {}
  interfaces:
  - interfaceName: Ethernet 3
    ipAddress: 10.128.2.44
    ipAddresses:
    - 10.128.2.44
    mac: 02:00:00:ed:1d:c1
    name: nic-0
  migrationMethod: BlockMigration
  nodeName: ssp05-4fpbn-worker-0-sdgmt
  phase: Running
  qosClass: Burstable

```

fails during migrations on


```
172m        Warning   Migrated                     virtualmachineinstance/win10-vm-ocs                         VirtualMachineInstance migration uid 10f1bbb4-514f-44ba-b2eb-153191ac0cce failed. reason:Live migration failed virError(Code=84, Domain=10, Message='Operation not supported: Cannot migrate empty or read-only disk sdb')
```

The status shows that we consider it being migratable and the cdrom drive is set to readOnly.

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


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 sgott 2021-02-10 16:01:59 UTC
Do you expect that the problem is that we didn't flag the VM as non-migrateable, or do you think KubeVirt mis-handled something that ended up triggering an unexpected error?

Comment 2 Roman Mohr 2021-02-10 16:03:38 UTC
(In reply to sgott from comment #1)
> Do you expect that the problem is that we didn't flag the VM as
> non-migrateable, or do you think KubeVirt mis-handled something that ended
> up triggering an unexpected error?

I think it should be migratable and the migration should work.

Comment 3 sgott 2021-02-10 18:25:46 UTC
A passing thought. We've been focused on the "ReadOnly" aspect of this, but it might well be that the virtio-win container disk ended up being empty?

Does registry.redhat.io/container-native-virtualization/virtio-win correct in this cluster?

Comment 4 Roman Mohr 2021-02-11 13:10:17 UTC
Vladik will have a look today to evaluate the cause and the impact.

Comment 5 Vladik Romanovsky 2021-02-12 05:03:07 UTC
(In reply to Roman Mohr from comment #4)
> Vladik will have a look today to evaluate the cause and the impact.

Posted https://github.com/kubevirt/kubevirt/pull/5020
We should skip cd-rom drives explicitly and not rely on libvirt to do it.
I probably overlooked this previously.

Comment 6 Shaul Garbourg 2021-02-15 10:09:34 UTC
Since this bug is impact on new workloads and not existing workloads, this is not a blocker and we target it for 2.6.1

Comment 7 Israel Pinto 2021-02-15 10:22:07 UTC
Doc BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1928666

Comment 14 Ruth Netser 2021-05-23 12:34:43 UTC
@zpeng - should the bug be re-opened?

Comment 34 Israel Pinto 2021-08-19 08:03:02 UTC
Windows 10 VM yaml:
[cnv-qe-jenkins@virt03-92557-executor ~]$ oc describe vmi  vm-win10 
Name:         vm-win10
Namespace:    default
Labels:       flavor.template.kubevirt.io/medium=true
kubevirt.io/domain=vm-win10
kubevirt.io/migrationTargetNodeName=virt03-92557-worker-0-phcc7
kubevirt.io/nodeName=virt03-92557-worker-0-phcc7
kubevirt.io/size=medium
os.template.kubevirt.io/win10=true
vm.kubevirt.io/name=vm-win10
workload.template.kubevirt.io/desktop=true
Annotations:  kubevirt.io/latest-observed-api-version: v1
kubevirt.io/storage-observed-api-version: v1alpha3
vm.kubevirt.io/flavor: medium
vm.kubevirt.io/os: windows10
vm.kubevirt.io/workload: desktop
API Version:  kubevirt.io/v1
Kind:         VirtualMachineInstance
Metadata:
Creation Timestamp:  2021-08-18T06:38:52Z
Finalizers:
foregroundDeleteVirtualMachine
Generation:  23
Managed Fields:
API Version:  kubevirt.io/v1alpha3
Fields Type:  FieldsV1
fieldsV1:
f:metadata:
f:annotations:
.:
f:kubevirt.io/latest-observed-api-version:
f:kubevirt.io/storage-observed-api-version:
f:vm.kubevirt.io/flavor:
f:vm.kubevirt.io/os:
f:vm.kubevirt.io/workload:
f:labels:
.:
f:flavor.template.kubevirt.io/medium:
f:kubevirt.io/domain:
f:kubevirt.io/migrationTargetNodeName:
f:kubevirt.io/size:
f:os.template.kubevirt.io/win10:
f:vm.kubevirt.io/name:
f:workload.template.kubevirt.io/desktop:
f:ownerReferences:
.:
k:{"uid":"4317505a-8976-4e52-bfdb-ac09361454c1"}:
.:
f:apiVersion:
f:blockOwnerDeletion:
f:controller:
f:kind:
f:name:
f:uid:
f:spec:
.:
f:domain:
.:
f:clock:
.:
f:timer:
.:
f:hpet:
.:
f:present:
f:hyperv:
.:
f:present:
f:pit:
.:
f:tickPolicy:
f:rtc:
.:
f:tickPolicy:
f:utc:
f:cpu:
.:
f:cores:
f:sockets:
f:threads:
f:devices:
.:
f:disks:
f:inputs:
f:interfaces:
f:features:
.:
f:acpi:
.:
f:enabled:
f:apic:
.:
f:enabled:
f:hyperv:
.:
f:frequencies:
.:
f:enabled:
f:ipi:
.:
f:enabled:
f:reenlightenment:
.:
f:enabled:
f:relaxed:
.:
f:enabled:
f:reset:
.:
f:enabled:
f:runtime:
.:
f:enabled:
f:spinlocks:
.:
f:spinlocks:
f:synic:
.:
f:enabled:
f:synictimer:
.:
f:direct:
.:
f:enabled:
f:tlbflush:
.:
f:enabled:
f:vapic:
.:
f:enabled:
f:vpindex:
.:
f:enabled:
f:firmware:
.:
f:uuid:
f:machine:
.:
f:type:
f:resources:
.:
f:requests:
.:
f:memory:
f:evictionStrategy:
f:hostname:
f:networks:
f:terminationGracePeriodSeconds:
f:volumes:
f:status:
.:
f:activePods:
.:
f:13ad3353-7b47-4add-aad1-e105ebdbfe96:
f:c8a577e6-5682-47ba-be61-dca0b68da4da:
f:guestOSInfo:
.:
f:id:
f:kernelRelease:
f:kernelVersion:
f:name:
f:prettyName:
f:version:
f:versionId:
f:launcherContainerImageVersion:
f:migrationState:
.:
f:migrationUid:
f:sourceNode:
f:targetNode:
f:targetPod:
f:qosClass:
Manager:      virt-controller
Operation:    Update
Time:         2021-08-18T06:44:34Z
API Version:  kubevirt.io/v1alpha3
Fields Type:  FieldsV1
fieldsV1:
f:metadata:
f:labels:
f:kubevirt.io/nodeName:
f:status:
f:conditions:
f:guestOSInfo:
f:id:
f:kernelRelease:
f:kernelVersion:
f:name:
f:prettyName:
f:version:
f:versionId:
f:interfaces:
f:migrationMethod:
f:migrationState:
f:completed:
f:endTimestamp:
f:mode:
f:startTimestamp:
f:targetDirectMigrationNodePorts:
.:
f:41237:
f:42337:
f:targetNodeAddress:
f:targetNodeDomainDetected:
f:nodeName:
f:phase:
f:volumeStatus:
Manager:    virt-handler
Operation:  Update
Time:       2021-08-19T04:36:36Z
Owner References:
API Version:           kubevirt.io/v1
Block Owner Deletion:  true
Controller:            true
Kind:                  VirtualMachine
Name:                  vm-win10
UID:                   4317505a-8976-4e52-bfdb-ac09361454c1
Resource Version:        2298272
UID:                     6b90cda4-ce9e-4683-bf9a-f296661f4720
Spec:
Domain:
Clock:
Timer:
Hpet:
Present:  false
Hyperv:
Present:  true
Pit:
Present:      true
Tick Policy:  delay
Rtc:
Present:      true
Tick Policy:  catchup
Utc:
Cpu:
Cores:    1
Sockets:  1
Threads:  1
Devices:
Disks:
Boot Order:  1
Disk:
Bus:  sata
Name:   rootdisk
Inputs:
Bus:   usb
Name:  tablet
Type:  tablet
Interfaces:
Mac Address:  02:20:eb:00:00:01
Masquerade:
Model:  e1000e
Name:   default
Features:
Acpi:
Enabled:  true
Apic:
Enabled:  true
Hyperv:
Frequencies:
Enabled:  true
Ipi:
Enabled:  true
Reenlightenment:
Enabled:  true
Relaxed:
Enabled:  true
Reset:
Enabled:  true
Runtime:
Enabled:  true
Spinlocks:
Enabled:    true
Spinlocks:  8191
Synic:
Enabled:  true
Synictimer:
Direct:
Enabled:  true
Enabled:    true
Tlbflush:
Enabled:  true
Vapic:
Enabled:  true
Vpindex:
Enabled:  true
Firmware:
Uuid:  6c72ea57-1dc7-5e9c-bea3-bbf8bfc25705
Machine:
Type:  pc-q35-rhel8.4.0
Resources:
Requests:
Cpu:          100m
Memory:       4Gi
Eviction Strategy:  LiveMigrate
Hostname:           vm-win10
Networks:
Name:  default
Pod:
Termination Grace Period Seconds:  3600
Volumes:
Data Volume:
Name:  vm-win10-rootdisk-8s9ao
Name:    rootdisk
Status:
Active Pods:
13ad3353-7b47-4add-aad1-e105ebdbfe96:  virt03-92557-worker-0-bf8pb
c8a577e6-5682-47ba-be61-dca0b68da4da:  virt03-92557-worker-0-phcc7
Conditions:
Last Probe Time:       2021-08-18T06:40:19Z
Last Transition Time:  <nil>
Status:                True
Type:                  AgentConnected
Last Probe Time:       <nil>
Last Transition Time:  2021-08-18T06:44:20Z
Status:                True
Type:                  Ready
Last Probe Time:       <nil>
Last Transition Time:  <nil>
Status:                True
Type:                  LiveMigratable
Guest OS Info:
Id:              mswindows
Kernel Release:  18362
Kernel Version:  10.0
Name:            Microsoft Windows
Pretty Name:     Windows 10 Pro
Version:         10
Version Id:      10
Interfaces:
Interface Name:  Ethernet 3
Ip Address:      10.129.2.136
Ip Addresses:
10.129.2.136
Mac:             02:20:eb:00:00:01
Name:            default
Interface Name:  Loopback Pseudo-Interface 1
Ip Address:      127.0.0.1
Ip Addresses:
::1
127.0.0.1
Launcher Container Image Version:  registry.redhat.io/container-native-virtualization/virt-launcher@sha256:4b497861990f44afd224f81073911101189089116c030dbc45070dc23db53466
Migration Method:                  LiveMigration
Migration State:
Completed:        true
End Timestamp:    2021-08-18T06:44:34Z
Migration UID:    9242741f-1148-4f34-a3b1-334720faca62
Mode:             PreCopy
Source Node:      virt03-92557-worker-0-bf8pb
Start Timestamp:  2021-08-18T06:44:20Z
Target Direct Migration Node Ports:
41237:                      49152
42337:                      0
Target Node:                  virt03-92557-worker-0-phcc7
Target Node Address:          10.129.2.4
Target Node Domain Detected:  true
Target Pod:                   virt-launcher-vm-win10-fs84c
Node Name:                      virt03-92557-worker-0-phcc7
Phase:                          Running
Qos Class:                      Burstable
Volume Status:
Name:    rootdisk
Target:  sda
Events:
Type    Reason   Age                     From          Message
----    ------   ----                    ----          -------
Normal  Created  2m13s (x1242 over 25h)  virt-handler  VirtualMachineInstance defined.
[cnv-qe-jenkins@virt03-92557-executor ~]$ oc describe vm  vm-win10   
Name:         vm-win10
Namespace:    default
Labels:       app=vm-win10
flavor.template.kubevirt.io/medium=true
os.template.kubevirt.io/win10=true
vm.kubevirt.io/template=windows10-desktop-medium
vm.kubevirt.io/template.namespace=openshift
vm.kubevirt.io/template.revision=1
vm.kubevirt.io/template.version=v0.15.0
workload.template.kubevirt.io/desktop=true
Annotations:  kubemacpool.io/transaction-timestamp: 2021-08-18T06:38:52.27415906Z
kubevirt.io/latest-observed-api-version: v1
kubevirt.io/storage-observed-api-version: v1alpha3
name.os.template.kubevirt.io/win10: Microsoft Windows 10
vm.kubevirt.io/validations:
[
{
"name": "minimal-required-memory",
"path": "jsonpath::.spec.domain.resources.requests.memory",
"rule": "integer",
"message": "This VM requires more memory.",
"min": 2147483648
}, {
"name": "windows-virtio-bus",
"path": "jsonpath::.spec.domain.devices.disks[*].disk.bus",
"valid": "jsonpath::.spec.domain.devices.disks[*].disk.bus",
"rule": "enum",
"message": "virto disk bus type has better performance, install virtio drivers in VM and change bus type",
"values": ["virtio"],
"justWarning": true
}, {
"name": "windows-disk-bus",
"path": "jsonpath::.spec.domain.devices.disks[*].disk.bus",
"valid": "jsonpath::.spec.domain.devices.disks[*].disk.bus",
"rule": "enum",
"message": "disk bus has to be either virtio or sata or scsi",
"values": ["virtio", "sata", "scsi"]
}, {
"name": "windows-cd-bus",
"path": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus",
"valid": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus",
"rule": "enum",
"message": "cd bus has to be sata",
"values": ["sata"]
}
]
API Version:  kubevirt.io/v1
Kind:         VirtualMachine
Metadata:
Creation Timestamp:  2021-08-18T01:58:21Z
Finalizers:
k8s.v1.cni.cncf.io/kubeMacPool
Generation:  5
Managed Fields:
API Version:  kubevirt.io/v1
Fields Type:  FieldsV1
fieldsV1:
f:metadata:
f:annotations:
.:
f:name.os.template.kubevirt.io/win10:
f:vm.kubevirt.io/validations:
f:labels:
.:
f:app:
f:flavor.template.kubevirt.io/medium:
f:os.template.kubevirt.io/win10:
f:vm.kubevirt.io/template:
f:vm.kubevirt.io/template.namespace:
f:vm.kubevirt.io/template.revision:
f:vm.kubevirt.io/template.version:
f:workload.template.kubevirt.io/desktop:
f:spec:
.:
f:dataVolumeTemplates:
f:template:
.:
f:metadata:
.:
f:annotations:
f:labels:
f:spec:
.:
f:domain:
.:
f:clock:
.:
f:timer:
.:
f:hpet:
.:
f:present:
f:hyperv:
f:pit:
.:
f:tickPolicy:
f:rtc:
.:
f:tickPolicy:
f:utc:
f:cpu:
.:
f:cores:
f:sockets:
f:threads:
f:devices:
.:
f:disks:
f:inputs:
f:interfaces:
f:features:
.:
f:acpi:
f:apic:
f:hyperv:
.:
f:frequencies:
f:ipi:
f:reenlightenment:
f:relaxed:
f:reset:
f:runtime:
f:spinlocks:
.:
f:spinlocks:
f:synic:
f:synictimer:
.:
f:direct:
f:tlbflush:
f:vapic:
f:vpindex:
f:machine:
.:
f:type:
f:resources:
.:
f:requests:
.:
f:memory:
f:evictionStrategy:
f:hostname:
f:networks:
f:terminationGracePeriodSeconds:
f:volumes:
Manager:      Mozilla
Operation:    Update
Time:         2021-08-18T01:58:21Z
API Version:  kubevirt.io/v1alpha3
Fields Type:  FieldsV1
fieldsV1:
f:spec:
f:running:
Manager:      virt-api
Operation:    Update
Time:         2021-08-18T02:19:34Z
API Version:  kubevirt.io/v1alpha3
Fields Type:  FieldsV1
fieldsV1:
f:metadata:
f:annotations:
f:kubevirt.io/latest-observed-api-version:
f:kubevirt.io/storage-observed-api-version:
f:status:
.:
f:conditions:
f:created:
f:ready:
f:volumeSnapshotStatuses:
Manager:         virt-controller
Operation:       Update
Time:            2021-08-18T06:39:08Z
Resource Version:  1038598
UID:               4317505a-8976-4e52-bfdb-ac09361454c1
Spec:
Data Volume Templates:
Metadata:
Creation Timestamp:  <nil>
Name:                vm-win10-rootdisk-8s9ao
Spec:
Pvc:
Access Modes:
ReadWriteMany
Resources:
Requests:
Storage:         60Gi
Storage Class Name:  ocs-storagecluster-ceph-rbd
Volume Mode:         Block
Source:
Http:
URL:  http://cnv-qe-server.rhevdev.lab.eng.rdu2.redhat.com/files/cnv-tests/windows-images/win_10.qcow2
Running:      true
Template:
Metadata:
Annotations:
vm.kubevirt.io/flavor:    medium
vm.kubevirt.io/os:        windows10
vm.kubevirt.io/workload:  desktop
Creation Timestamp:         <nil>
Labels:
flavor.template.kubevirt.io/medium:     true
kubevirt.io/domain:                     vm-win10
kubevirt.io/size:                       medium
os.template.kubevirt.io/win10:          true
vm.kubevirt.io/name:                    vm-win10
workload.template.kubevirt.io/desktop:  true
Spec:
Domain:
Clock:
Timer:
Hpet:
Present:  false
Hyperv:
Pit:
Tick Policy:  delay
Rtc:
Tick Policy:  catchup
Utc:
Cpu:
Cores:    1
Sockets:  1
Threads:  1
Devices:
Disks:
Boot Order:  1
Disk:
Bus:  sata
Name:   rootdisk
Inputs:
Bus:   usb
Name:  tablet
Type:  tablet
Interfaces:
Mac Address:  02:20:eb:00:00:01
Masquerade:
Model:  e1000e
Name:   default
Features:
Acpi:
Apic:
Hyperv:
Frequencies:
Ipi:
Reenlightenment:
Relaxed:
Reset:
Runtime:
Spinlocks:
Spinlocks:  8191
Synic:
Synictimer:
Direct:
Tlbflush:
Vapic:
Vpindex:
Machine:
Type:  pc-q35-rhel8.4.0
Resources:
Requests:
Memory:       4Gi
Eviction Strategy:  LiveMigrate
Hostname:           vm-win10
Networks:
Name:  default
Pod:
Termination Grace Period Seconds:  3600
Volumes:
Data Volume:
Name:  vm-win10-rootdisk-8s9ao
Name:    rootdisk
Status:
Conditions:
Last Probe Time:       <nil>
Last Transition Time:  2021-08-18T06:39:04Z
Status:                True
Type:                  Ready
Created:                 true
Ready:                   true
Volume Snapshot Statuses:
Enabled:  true
Name:     rootdisk
Events:       <none>
[cnv-qe-jenkins@virt03-92557-ex

Comment 35 Israel Pinto 2021-08-19 08:03:25 UTC
VMI:
oc describe vmi  vm-win10
Name:         vm-win10
Namespace:    default
Labels:       flavor.template.kubevirt.io/medium=true
kubevirt.io/domain=vm-win10
kubevirt.io/migrationTargetNodeName=virt03-92557-worker-0-phcc7
kubevirt.io/nodeName=virt03-92557-worker-0-phcc7
kubevirt.io/size=medium
os.template.kubevirt.io/win10=true
vm.kubevirt.io/name=vm-win10
workload.template.kubevirt.io/desktop=true
Annotations:  kubevirt.io/latest-observed-api-version: v1
kubevirt.io/storage-observed-api-version: v1alpha3
vm.kubevirt.io/flavor: medium
vm.kubevirt.io/os: windows10
vm.kubevirt.io/workload: desktop
API Version:  kubevirt.io/v1
Kind:         VirtualMachineInstance
Metadata:
Creation Timestamp:  2021-08-18T06:38:52Z
Finalizers:
foregroundDeleteVirtualMachine
Generation:  23
Managed Fields:
API Version:  kubevirt.io/v1alpha3
Fields Type:  FieldsV1
fieldsV1:
f:metadata:
f:annotations:
.:
f:kubevirt.io/latest-observed-api-version:
f:kubevirt.io/storage-observed-api-version:
f:vm.kubevirt.io/flavor:
f:vm.kubevirt.io/os:
f:vm.kubevirt.io/workload:
f:labels:
.:
f:flavor.template.kubevirt.io/medium:
f:kubevirt.io/domain:
f:kubevirt.io/migrationTargetNodeName:
f:kubevirt.io/size:
f:os.template.kubevirt.io/win10:
f:vm.kubevirt.io/name:
f:workload.template.kubevirt.io/desktop:
f:ownerReferences:
.:
k:{"uid":"4317505a-8976-4e52-bfdb-ac09361454c1"}:
.:
f:apiVersion:
f:blockOwnerDeletion:
f:controller:
f:kind:
f:name:
f:uid:
f:spec:
.:
f:domain:
.:
f:clock:
.:
f:timer:
.:
f:hpet:
.:
f:present:
f:hyperv:
.:
f:present:
f:pit:
.:
f:tickPolicy:
f:rtc:
.:
f:tickPolicy:
f:utc:
f:cpu:
.:
f:cores:
f:sockets:
f:threads:
f:devices:
.:
f:disks:
f:inputs:
f:interfaces:
f:features:
.:
f:acpi:
.:
f:enabled:
f:apic:
.:
f:enabled:
f:hyperv:
.:
f:frequencies:
.:
f:enabled:
f:ipi:
.:
f:enabled:
f:reenlightenment:
.:
f:enabled:
f:relaxed:
.:
f:enabled:
f:reset:
.:
f:enabled:
f:runtime:
.:
f:enabled:
f:spinlocks:
.:
f:spinlocks:
f:synic:
.:
f:enabled:
f:synictimer:
.:
f:direct:
.:
f:enabled:
f:tlbflush:
.:
f:enabled:
f:vapic:
.:
f:enabled:
f:vpindex:
.:
f:enabled:
f:firmware:
.:
f:uuid:
f:machine:
.:
f:type:
f:resources:
.:
f:requests:
.:
f:memory:
f:evictionStrategy:
f:hostname:
f:networks:
f:terminationGracePeriodSeconds:
f:volumes:
f:status:
.:
f:activePods:
.:
f:13ad3353-7b47-4add-aad1-e105ebdbfe96:
f:c8a577e6-5682-47ba-be61-dca0b68da4da:
f:guestOSInfo:
.:
f:id:
f:kernelRelease:
f:kernelVersion:
f:name:
f:prettyName:
f:version:
f:versionId:
f:launcherContainerImageVersion:
f:migrationState:
.:
f:migrationUid:
f:sourceNode:
f:targetNode:
f:targetPod:
f:qosClass:
Manager:      virt-controller
Operation:    Update
Time:         2021-08-18T06:44:34Z
API Version:  kubevirt.io/v1alpha3
Fields Type:  FieldsV1
fieldsV1:
f:metadata:
f:labels:
f:kubevirt.io/nodeName:
f:status:
f:conditions:
f:guestOSInfo:
f:id:
f:kernelRelease:
f:kernelVersion:
f:name:
f:prettyName:
f:version:
f:versionId:
f:interfaces:
f:migrationMethod:
f:migrationState:
f:completed:
f:endTimestamp:
f:mode:
f:startTimestamp:
f:targetDirectMigrationNodePorts:
.:
f:41237:
f:42337:
f:targetNodeAddress:
f:targetNodeDomainDetected:
f:nodeName:
f:phase:
f:volumeStatus:
Manager:    virt-handler
Operation:  Update
Time:       2021-08-19T04:36:36Z
Owner References:
API Version:           kubevirt.io/v1
Block Owner Deletion:  true
Controller:            true
Kind:                  VirtualMachine
Name:                  vm-win10
UID:                   4317505a-8976-4e52-bfdb-ac09361454c1
Resource Version:        2298272
UID:                     6b90cda4-ce9e-4683-bf9a-f296661f4720
Spec:
Domain:
Clock:
Timer:
Hpet:
Present:  false
Hyperv:
Present:  true
Pit:
Present:      true
Tick Policy:  delay
Rtc:
Present:      true
Tick Policy:  catchup
Utc:
Cpu:
Cores:    1
Sockets:  1
Threads:  1
Devices:
Disks:
Boot Order:  1
Disk:
Bus:  sata
Name:   rootdisk
Inputs:
Bus:   usb
Name:  tablet
Type:  tablet
Interfaces:
Mac Address:  02:20:eb:00:00:01
Masquerade:
Model:  e1000e
Name:   default
Features:
Acpi:
Enabled:  true
Apic:
Enabled:  true
Hyperv:
Frequencies:
Enabled:  true
Ipi:
Enabled:  true
Reenlightenment:
Enabled:  true
Relaxed:
Enabled:  true
Reset:
Enabled:  true
Runtime:
Enabled:  true
Spinlocks:
Enabled:    true
Spinlocks:  8191
Synic:
Enabled:  true
Synictimer:
Direct:
Enabled:  true
Enabled:    true
Tlbflush:
Enabled:  true
Vapic:
Enabled:  true
Vpindex:
Enabled:  true
Firmware:
Uuid:  6c72ea57-1dc7-5e9c-bea3-bbf8bfc25705
Machine:
Type:  pc-q35-rhel8.4.0
Resources:
Requests:
Cpu:          100m
Memory:       4Gi
Eviction Strategy:  LiveMigrate
Hostname:           vm-win10
Networks:
Name:  default
Pod:
Termination Grace Period Seconds:  3600
Volumes:
Data Volume:
Name:  vm-win10-rootdisk-8s9ao
Name:    rootdisk
Status:
Active Pods:
13ad3353-7b47-4add-aad1-e105ebdbfe96:  virt03-92557-worker-0-bf8pb
c8a577e6-5682-47ba-be61-dca0b68da4da:  virt03-92557-worker-0-phcc7
Conditions:
Last Probe Time:       2021-08-18T06:40:19Z
Last Transition Time:  <nil>
Status:                True
Type:                  AgentConnected
Last Probe Time:       <nil>
Last Transition Time:  2021-08-18T06:44:20Z
Status:                True
Type:                  Ready
Last Probe Time:       <nil>
Last Transition Time:  <nil>
Status:                True
Type:                  LiveMigratable
Guest OS Info:
Id:              mswindows
Kernel Release:  18362
Kernel Version:  10.0
Name:            Microsoft Windows
Pretty Name:     Windows 10 Pro
Version:         10
Version Id:      10
Interfaces:
Interface Name:  Ethernet 3
Ip Address:      10.129.2.136
Ip Addresses:
10.129.2.136
Mac:             02:20:eb:00:00:01
Name:            default
Interface Name:  Loopback Pseudo-Interface 1
Ip Address:      127.0.0.1
Ip Addresses:
::1
127.0.0.1
Launcher Container Image Version:  registry.redhat.io/container-native-virtualization/virt-launcher@sha256:4b497861990f44afd224f81073911101189089116c030dbc45070dc23db53466
Migration Method:                  LiveMigration
Migration State:
Completed:        true
End Timestamp:    2021-08-18T06:44:34Z
Migration UID:    9242741f-1148-4f34-a3b1-334720faca62
Mode:             PreCopy
Source Node:      virt03-92557-worker-0-bf8pb
Start Timestamp:  2021-08-18T06:44:20Z
Target Direct Migration Node Ports:
41237:                      49152
42337:                      0
Target Node:                  virt03-92557-worker-0-phcc7
Target Node Address:          10.129.2.4
Target Node Domain Detected:  true
Target Pod:                   virt-launcher-vm-win10-fs84c
Node Name:                      virt03-92557-worker-0-phcc7
Phase:                          Running
Qos Class:                      Burstable
Volume Status:
Name:    rootdisk
Target:  sda
Events:
Type    Reason   Age                     From          Message
----    ------   ----                    ----          -------
Normal  Created  2m13s (x1242 over 25h)  virt-handler  VirtualMachineInstance defined.

Comment 36 Israel Pinto 2021-08-19 15:07:31 UTC
tested with BM 3 times migration average time is 3-4 min with cdrom.
VM spec:
apiVersion: kubevirt.io/v1
kind: VirtualMachine
metadata:
  annotations:
    kubemacpool.io/transaction-timestamp: '2021-08-19T14:34:48.881840969Z'
    kubevirt.io/latest-observed-api-version: v1
    kubevirt.io/storage-observed-api-version: v1alpha3
    name.os.template.kubevirt.io/win10: Microsoft Windows 10
    vm.kubevirt.io/validations: |
      [
        {
          "name": "minimal-required-memory",
          "path": "jsonpath::.spec.domain.resources.requests.memory",
          "rule": "integer",
          "message": "This VM requires more memory.",
          "min": 2147483648
        }, {
          "name": "windows-virtio-bus",
          "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus",
          "valid": "jsonpath::.spec.domain.devices.disks[*].disk.bus",
          "rule": "enum",
          "message": "virto disk bus type has better performance, install virtio drivers in VM and change bus type",
          "values": ["virtio"],
          "justWarning": true
        }, {
          "name": "windows-disk-bus",
          "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus",
          "valid": "jsonpath::.spec.domain.devices.disks[*].disk.bus",
          "rule": "enum",
          "message": "disk bus has to be either virtio or sata or scsi",
          "values": ["virtio", "sata", "scsi"]
        }, {
          "name": "windows-cd-bus",
          "path": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus",
          "valid": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus",
          "rule": "enum",
          "message": "cd bus has to be sata",
          "values": ["sata"]
        }
      ]
  resourceVersion: '231804'
  name: test-cdrom-mig
  uid: ad01944d-2c1a-49e5-a762-003a643803c7
  creationTimestamp: '2021-08-19T14:34:48Z'
  generation: 1
  managedFields:
    - apiVersion: kubevirt.io/v1
      fieldsType: FieldsV1
      fieldsV1:
        'f:metadata':
          'f:annotations':
            .: {}
            'f:name.os.template.kubevirt.io/win10': {}
            'f:vm.kubevirt.io/validations': {}
          'f:labels':
            .: {}
            'f:app': {}
            'f:os.template.kubevirt.io/win10': {}
            'f:vm.kubevirt.io/template': {}
            'f:vm.kubevirt.io/template.namespace': {}
            'f:vm.kubevirt.io/template.revision': {}
            'f:vm.kubevirt.io/template.version': {}
            'f:workload.template.kubevirt.io/desktop': {}
        'f:spec':
          .: {}
          'f:dataVolumeTemplates': {}
          'f:running': {}
          'f:template':
            .: {}
            'f:metadata':
              .: {}
              'f:annotations': {}
              'f:labels': {}
            'f:spec':
              .: {}
              'f:domain':
                .: {}
                'f:clock':
                  .: {}
                  'f:timer':
                    .: {}
                    'f:hpet':
                      .: {}
                      'f:present': {}
                    'f:hyperv': {}
                    'f:pit':
                      .: {}
                      'f:tickPolicy': {}
                    'f:rtc':
                      .: {}
                      'f:tickPolicy': {}
                  'f:utc': {}
                'f:cpu':
                  .: {}
                  'f:cores': {}
                  'f:sockets': {}
                  'f:threads': {}
                'f:devices':
                  .: {}
                  'f:disks': {}
                  'f:inputs': {}
                  'f:interfaces': {}
                'f:features':
                  .: {}
                  'f:acpi': {}
                  'f:apic': {}
                  'f:hyperv':
                    'f:runtime': {}
                    'f:vpindex': {}
                    'f:frequencies': {}
                    'f:vapic': {}
                    'f:reenlightenment': {}
                    .: {}
                    'f:tlbflush': {}
                    'f:synic': {}
                    'f:ipi': {}
                    'f:spinlocks':
                      .: {}
                      'f:spinlocks': {}
                    'f:synictimer':
                      .: {}
                      'f:direct': {}
                    'f:relaxed': {}
                    'f:reset': {}
                'f:machine':
                  .: {}
                  'f:type': {}
                'f:resources':
                  .: {}
                  'f:requests':
                    .: {}
                    'f:memory': {}
              'f:evictionStrategy': {}
              'f:hostname': {}
              'f:networks': {}
              'f:terminationGracePeriodSeconds': {}
              'f:volumes': {}
      manager: Mozilla
      operation: Update
      time: '2021-08-19T14:34:48Z'
    - apiVersion: kubevirt.io/v1alpha3
      fieldsType: FieldsV1
      fieldsV1:
        'f:metadata':
          'f:annotations':
            'f:kubevirt.io/latest-observed-api-version': {}
            'f:kubevirt.io/storage-observed-api-version': {}
        'f:status':
          .: {}
          'f:conditions': {}
          'f:created': {}
          'f:ready': {}
          'f:volumeSnapshotStatuses': {}
      manager: virt-controller
      operation: Update
      time: '2021-08-19T14:39:08Z'
  namespace: test-win-migration
  finalizers:
    - k8s.v1.cni.cncf.io/kubeMacPool
  labels:
    app: test-cdrom-mig
    os.template.kubevirt.io/win10: 'true'
    vm.kubevirt.io/template: windows10-desktop-large
    vm.kubevirt.io/template.namespace: openshift
    vm.kubevirt.io/template.revision: '1'
    vm.kubevirt.io/template.version: v0.15.0
    workload.template.kubevirt.io/desktop: 'true'
spec:
  dataVolumeTemplates:
    - metadata:
        creationTimestamp: null
        name: test-cdrom-mig-rootdisk-71sr2
      spec:
        pvc:
          accessModes:
            - ReadWriteMany
          resources:
            requests:
              storage: 60Gi
          storageClassName: ocs-storagecluster-ceph-rbd
          volumeMode: Block
        source:
          http:
            url: >-
              http://cnv-qe-server.rhevdev.lab.eng.rdu2.redhat.com/files/cnv-tests/windows-images/win_10.qcow2
  running: true
  template:
    metadata:
      annotations:
        vm.kubevirt.io/flavor: large
        vm.kubevirt.io/os: windows10
        vm.kubevirt.io/workload: desktop
      creationTimestamp: null
      labels:
        kubevirt.io/domain: test-cdrom-mig
        kubevirt.io/size: large
        os.template.kubevirt.io/win10: 'true'
        vm.kubevirt.io/name: test-cdrom-mig
        workload.template.kubevirt.io/desktop: 'true'
    spec:
      domain:
        clock:
          timer:
            hpet:
              present: false
            hyperv: {}
            pit:
              tickPolicy: delay
            rtc:
              tickPolicy: catchup
          utc: {}
        cpu:
          cores: 4
          sockets: 1
          threads: 1
        devices:
          disks:
            - cdrom:
                bus: sata
              name: windows-guest-tools
            - bootOrder: 1
              disk:
                bus: sata
              name: rootdisk
          inputs:
            - bus: usb
              name: tablet
              type: tablet
          interfaces:
            - macAddress: '02:f4:ed:00:00:03'
              masquerade: {}
              model: e1000e
              name: default
        features:
          acpi: {}
          apic: {}
          hyperv:
            reenlightenment: {}
            ipi: {}
            synic: {}
            synictimer:
              direct: {}
            spinlocks:
              spinlocks: 8191
            reset: {}
            relaxed: {}
            vpindex: {}
            runtime: {}
            tlbflush: {}
            frequencies: {}
            vapic: {}
        machine:
          type: pc-q35-rhel8.4.0
        resources:
          requests:
            memory: 10Gi
      evictionStrategy: LiveMigrate
      hostname: test-cdrom-mig
      networks:
        - name: default
          pod: {}
      terminationGracePeriodSeconds: 3600
      volumes:
        - containerDisk:
            image: >-
              registry.redhat.io/container-native-virtualization/virtio-win@sha256:013fc43d8ff95d5a874ea9e512483d43ac1ec6d80026f5dcfdf12f882648ad64
          name: windows-guest-tools
        - dataVolume:
            name: test-cdrom-mig-rootdisk-71sr2
          name: rootdisk
status:
  conditions:
    - lastProbeTime: null
      lastTransitionTime: '2021-08-19T14:39:03Z'
      status: 'True'
      type: Ready
  created: true
  ready: true
  volumeSnapshotStatuses:
    - enabled: false
      name: windows-guest-tools
      reason: Volume type has no StorageClass defined
    - enabled: true
      name: rootdisk

Events:
Type    Reason            Age                   From                         Message
----    ------            ----                  ----                         -------
Normal  SuccessfulCreate  25m                   virtualmachine-controller    Created virtual machine pod virt-launcher-test-cdrom-mig-s74pc
Normal  SuccessfulCreate  25m                   disruptionbudget-controller  Created PodDisruptionBudget kubevirt-disruption-budget-zqxnk
Normal  Started           24m                   virt-handler                 VirtualMachineInstance started.
Normal  SuccessfulCreate  22m                   virtualmachine-controller    Created PodDisruptionBudget kubevirt-migration-pdb-test-cdrom-mig-migration-cs668
Normal  PreparingTarget   21m                   virt-handler                 Migration Target is listening at 10.131.0.4, on ports: 34669,35071,34611
Normal  Migrating         19m (x7 over 21m)     virt-handler                 VirtualMachineInstance is migrating.
Normal  SuccessfulDelete  17m                   disruptionbudget-controller  Deleted PodDisruptionBudget kubevirt-migration-pdb-test-cdrom-mig-migration-cs668
Normal  SuccessfulCreate  16m                   virtualmachine-controller    Created PodDisruptionBudget kubevirt-migration-pdb-test-cdrom-mig-migration-p42gl
Normal  Created           16m (x14 over 17m)    virt-handler                 VirtualMachineInstance defined.
Normal  Migrating         15m (x9 over 16m)     virt-handler                 VirtualMachineInstance is migrating.
Normal  SuccessfulDelete  12m                   disruptionbudget-controller  Deleted PodDisruptionBudget kubevirt-migration-pdb-test-cdrom-mig-migration-p42gl
Normal  Created           3m39s (x48 over 24m)  virt-handler                 VirtualMachineInstance defined.
Normal  SuccessfulCreate  3m15s                 virtualmachine-controller    Created PodDisruptionBudget kubevirt-migration-pdb-test-cdrom-mig-migration-j8gg4
Normal  PreparingTarget   2m54s (x3 over 21m)   virt-handler                 VirtualMachineInstance Migration Target Prepared.
Normal  PreparingTarget   2m54s                 virt-handler                 Migration Target is listening at 10.131.0.4, on ports: 36905,35781,40763
ipinto@localhost  ~  oc get pods  test-cdrom-mig -n test-win-migration
Error from server (NotFound): pods "test-cdrom-mig" not found
✘ ipinto@localhost  ~  oc get pods -n test-win-migration
NAME                                 READY   STATUS      RESTARTS   AGE
virt-launcher-test-cdrom-mig-6lp4l   2/2     Running     0          4m58s
virt-launcher-test-cdrom-mig-cnszj   0/2     Completed   0          24m
virt-launcher-test-cdrom-mig-s74pc   0/2     Completed   0          26m
virt-launcher-test-cdrom-mig-szf6b   0/2     Completed   0          18m


moving to verify.

Comment 41 errata-xmlrpc 2021-08-24 12:48:59 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Moderate: OpenShift Virtualization 4.8.1 Images security and bug fix update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2021:3259

Comment 42 Red Hat Bugzilla 2023-09-15 01:00:58 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 500 days