Nova not updating VM's XML in KVM
Bug #1853048 reported by
Rafael Weingartner
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ceilometer |
New
|
Undecided
|
Unassigned | ||
OpenStack Compute (nova) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Ceilometer was causing resources to have a huge amount of revisions on Gnocchi
(1000+), because the compute pollsters were constantly pushing outdated
attributes. This can happen when users (as an example), update the name of VMs.
The name is not updated in the VM's XML that is stored in the KVM host.
This causes the Ceilometer compute pollster to constantly push outdated attributes
that trigger resource revisions on Gnocchi (if we have other pollsters pushing the right
attribute value that is gathered from OpenStack API).
We are using OpenStack Rocky, and Nova version is 18.0.1.
To post a comment you must log in.
Nova does not even call down to the compute node when attributes like display_name are changed. The next time the xml is updated would be when it is regenerated, like during a lifecycle event (hard reboot) or migration. Ceilometer scraping that information out of the libvirt XML underneath nova is, as expected, not reliable.
Changing this would require new a RPC call, and would add load to rabbit, the compute, and introduce additional traffic between nova and libvirt. If there was some strong use-case for this, maybe that would be worthwhile, but I don't think ceilometer wanting to scrape those metadata items from the libvirt XML is strong enough.