Hello,
I'm trying to live migrate some VMs from CentOS 7 to Rocky 8.
Everything run smoothly when there is no extra specs on flavors
but things getting more complicated when those are fixed.
Especially when using quota:vif_burst for QOS.
I know that we aren't supposed to use this for QOS now but it's an
old cluster and it was done that way at the time. So VMs kinda
have all those specs tied to them.
When live migrate a VM this show up in the nova's logs :
driver.py _live_migration_operation
nova.virt.libvirt.driverĀ Live Migration failure: internal
error: Child process (tc class add dev tapxxxxxxxx-xx parent 1:
classid 1:1 htb rate 250000kbps ceil 2000000kbps burst
60000000kb quantum 21333) unexpected exit status 1: Illegal
"burst"
This bug cover the problem : https://bugs.launchpad.net/nova/+bug/1960840
So it's seems to be a normal behavior. Plus I forgot to mention
that I'm on OpenStack Train version and the file mentioned in the
launchpad is not present for this version.
By using Rocky 8 I have to use an updated libvirt that won't
accept the burst parameter we used to set. All available versions
of libvirt on Rocky 8 have changed behavior concerning the burst
parameter.
I've done some testing to make things works including removing
the extra_specs on flavors and in the DB, removing it through
libvirt and trying to modify tc rules used by a VM but it didn't
worked.
I have not tried yet to patch Nova or Libvirt but I don't really
know where to look for.
The only thing that did work was to resize the VM to an identical
flavor without the extra_specs. But this induce a complete reboot
of the VM. I would like, if possible, to be able to live migrate
the VMs which is quite easier.
Thank you for any help,
Best regards.
Jahson