VM created from a backup keeps the backup's data volume device ids on a config drive network and cannot start
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- java
- Ambito
- backend, infrastructure
Direzione di ricerca
Start by tracing createVMFromBackup and how datadisksdetails carries backup volume device IDs into VM creation. Compare the config-drive network path and the documented q35 SCSI device layout, including the vm.iso.max.count=2 case; the payload names no source files or tests. Done when backup-created VMs on config-drive networks avoid reserved devices and start successfully across the reported cases.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
createVMFromBackup takes the device ids of the data volumes from the backup. A backup of a VM without config drive can have a data volume on a device id that is reserved on a config drive VM (4, or 5 on main). When the VM is created from that backup on a config drive network, the volume keeps that device id, and on q35 (SATA CD-ROMs, SCSI data disks) its target is the same as a CD-ROM. The VM ends in Error state with XML error: target 'sde' duplicated (4.22) or target 'sdf' duplicated (main, only when vm.iso.max.count=2). The same backup restored on a network without config drive gives a running VM.
Not caused by the device id fixes): it also fails on 4.22.1.1 and on 4.23.0.0. On 4.23.0.0, a VM created from a backup with data volumes on 1, 2, 5, 6 on a config drive network also cannot start with vm.iso.max.count=2 (target 'sde' duplicated between the empty CD-ROM and the config drive ISO), and with the 4.23 device ids (1, 2, 4, 5) the source VM itself cannot start.
Versions
Fails before the device id fixes:
- 4.22.1.1: deviceid 4 kept, the VM cannot start (default vm.iso.max.count=1).
- 4.23.0.0: data volumes on 1, 2, 5, 6: the VM starts with vm.iso.max.count=1 and cannot start with vm.iso.max.count=2.
Still fails after the device id fixes (this path is not covered by them):
- 4.22 build with the device id fix (4.22.2.0-SNAPSHOT): same as 4.22.1.1.
- main (24.0.0-SNAPSHOT): same as 4.23.0.0 (starts with vm.iso.max.count=1, cannot start with 2).
Environment:
KVM on OL 9, qemu-kvm 7.2.0, libvirt 9.0.0, machine type pc-q35-rhel9.2.0 (template settings rootDiskController=scsi, kvm.guest.os.machine.type=pc-q35-rhel9.2.0, UEFI=LEGACY). NFS primary storage, NAS backup provider with an NFS repository.
The steps to reproduce the bug
- Create two L2 networks: N1 with DefaultL2NetworkOffering, N2 with DefaultL2NetworkOfferingConfigDrive.
- Deploy a q35 scsi VM on N1 and attach data volumes: on 4.22, 3 volumes (device ids 1, 2, 4); on main, 4 volumes (device ids 1, 2, 5, 6).
- Assign the VM to a NAS backup offering and take a backup. The backup volume list has the same device ids.
- (main only) Set vm.iso.max.count to 2.
- Create a VM from the backup on N2 (createVMFromBackup with networkids=N2).
- The job fails with 530 "Unable to orchestrate the start of VM instance". The VM is in Error, the data volume is on deviceid 4 (or 5), and the management server log has "Unable to start VM on Host ... XML error: target 'sde' (or 'sdf') duplicated" for each host.
- Control: create a VM from the same backup on N1. It is Running.
Workaround
Tested on 4.22: createVMFromBackup with datadisksdetails and device ids 1, 2, 5 gives a running VM.
What to do about it?
Expected: on a config drive network, the data volumes of a VM created from a backup do not use the device ids reserved for the CD-ROMs and the config drive ISO, and the VM starts.
- Lingua principale
- Java
- Stelle
- 3.1k
- Fork
- 1.4k
- Merge medio
- 7g 16h
- PR unite (30g)
- 15
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di apache/cloudstack
-
resizeVolume of a running system VM's volume is accepted but the VM never sees the new sizeForse già presa @bhouse-nexthop l’ha presa 3 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
apache/cloudstack#14645 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
VR reports a load balancer change as applied when haproxy.cfg cannot be replacedForse già presa @bhouse-nexthop l’ha presa 3 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
apache/cloudstack#14633 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
restartNetwork reports a ResourceUnavailableException as an unexpected error (530), unlike restartVPC (534)Forse già presa @bhouse-nexthop l’ha presa 3 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
apache/cloudstack#14631 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
apache/cloudstack#14625 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Remote access VPN users are disconnected on every LB, ACL, port forward or firewall change (xl2tpd restarted on every iptables pass)Forse già presa @willbennett-devops l’ha presa 12 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
apache/cloudstack#14545 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di apache/cloudstack
Issue simili
-
[Bug]: Nullable implicit operator on string extensible enums still throws for a null stringForse già presa Una pull request collegata a questa issue è aperta o già unita. Apertabug emitter:client:csharp
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
microsoft/typespec#12572 · 1 commento · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
[BUG]: Java SDK MountRequest always sends update-optional fields, resetting stored mount settingsApertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno
-
GCC 15.2: -Wcast-qual warning - cast discards const qualifier from pointer target type (H5trace.c)Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
I maintainer di solito rispondono entro 1 giorno
-
[Bug] RemotingHelper.connect swaps the socket send and receive buffer configurationForse già presa @amalsaidov l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
needs-area-label
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 2 giorni