Repository navigation
KVM: after "Out of band VM power on" the guest NICs keep broadcast_uri NULL and live migration fails #14520
Description
Problem
If a KVM host agent stops responding while its VMs keep running, the host is declared Down and its VMs are marked Stopped. At that point nics.broadcast_uri of their guest NICs is NULL. When the agent comes back, the VMs are set to Running again (event "Out of band VM power on"), but nics.broadcast_uri stays NULL while the network still has its VLAN (networks.broadcast_uri vlan://).
The VMs keep working on their current host. A live migration of such a router or VM to another host is refused. The destination does not create the per-VLAN bridge, and libvirt fails with:
Exception during migrate: org.libvirt.LibvirtException: Cannot get interface MTU on 'breth1-<vlan>': No such device
Management server log, for the router and the VM:
2026-10-28 16:01:36,967 ERROR [c.c.v.ClusteredVirtualMachineManagerImpl] (Work-Job-Executor-28:[ctx-8e0f9702, job-152/job-153, ctx-152e1c05]) (logid:26e1c1f1) Migration command failed for VM r-18-VM on source host id=2 to destination host 1: Exception during migrate: org.libvirt.LibvirtException: Cannot get interface MTU on 'breth1-1658': No such device
2026-10-28 16:01:38,925 ERROR [c.c.v.ClusteredVirtualMachineManagerImpl] (Work-Job-Executor-29:[ctx-33afcd90, job-154/job-155, ctx-f4ba8d18]) (logid:3191a0e1) Migration command failed for VM i-2-17-VM on source host id=2 to destination host 1: Exception during migrate: org.libvirt.LibvirtException: Cannot get interface MTU on 'breth1-1658': No such device
The VMs stay on the source host and keep their network. A router reboot or a VM stop/start fills broadcast_uri again, and migration then works. Until then, the VMs cannot be moved off the host, for example for host maintenance.
Versions
- CloudStack: 4.22.1.1 (management server and KVM agents).
- Hypervisor: KVM on Oracle Linux 9, libvirt 9.0.0, two hosts in one cluster.
- Network: advanced zone, Linux bridge (per-VLAN bridges breth1-), isolated network with a VLAN, virtual router. The router service offering has HA disabled and the VM is not HA-enabled, so nothing is restarted while the host is Down.
- Storage: NFS primary storage.
The steps to reproduce the bug
- Two KVM hosts (host 1, host 2) in one cluster. Isolated network N with a VLAN. Its router (service offering without HA) and a VM P with one NIC on N run on host 2, VM HA not enabled. Control: migrate the router and VM P to host 1 and back. Both work.
- On host 2: kill -STOP . Wait until host 2 is Down (about 5 minutes). The router and VM P are shown Stopped and nics.broadcast_uri of their NICs on N is NULL; the domains are still running on host 2.
- kill -CONT . Host 2 comes back Up, the events show "Out of band VM power on" for both, and they are Running. nics.broadcast_uri is still NULL.
- Migrate the router (migrateSystemVm) and VM P (migrateVirtualMachine) to host 1. Both are refused with the error above.
- Reboot the router and stop/start VM P. broadcast_uri is vlan:// again and the migration works.
What to do about it?
Expected Result: after "Out of band VM power on" the guest NICs carry the network's broadcast URI again, the same as after a normal start, so the VMs can be live migrated without a reboot or stop/start.
Activity