[Bug 2011535] Re: nova can't access instance image file because the file is now chowned to the kvm group by default

Launchpad Bug Tracker 2011535 at bugs.launchpad.net
Tue Apr 11 21:24:19 UTC 2023


This bug was fixed in the package nova - 3:26.1.0-0ubuntu2

---------------
nova (3:26.1.0-0ubuntu2) kinetic; urgency=medium

  * d/nova-compute-qemu.postinst: Add nova user to kvm group (LP:
#2011535).

 -- Corey Bryant <corey.bryant at canonical.com>  Wed, 15 Mar 2023 12:42:12
-0400

** Changed in: nova (Ubuntu Kinetic)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to Ubuntu Cloud Archive.
https://bugs.launchpad.net/bugs/2011535

Title:
  nova can't access instance image file because the file is now chowned
  to the kvm group by default

Status in Ubuntu Cloud Archive:
  Fix Released
Status in Ubuntu Cloud Archive zed series:
  Fix Released
Status in nova package in Ubuntu:
  Fix Released
Status in nova source package in Kinetic:
  Fix Released
Status in nova source package in Lunar:
  Fix Released

Bug description:
  [Impact]
  This affects the nova package for kinetic and lunar. It is a side-effect of the changes made in https://bugs.launchpad.net/charm-nova-compute/+bug/1967956, specifically (1) and (3) described in https://bugs.launchpad.net/charm-nova-compute/+bug/1967956/comments/10. We tightened the mode of directories under /var/lib/nova from 755 to 750, and the mode of files under /var/lib/nova from 644 to 640. As a result, adding nova to the kvm group was required for nova to be able to access vm disks. We did that for nova-compute-kvm package but failed to do so for the nova-compute-qemu package.

  == original bug description ==

  It seems libvirt package in Ubuntu 22.04 uses the kvm group instead of the libvirt-qemu group when launching a qemu process.
  Because of this change and the default behavior of libvirt which makes all image files chowned by the group/user to run qemu process, the instance files are owned by the kvm group, instead of the libvirt-qemu group.

  However currently the nova user is still added to the libvirt-qemu
  group instead of the kvm group.

  Because of this inconsistency nova can't access to instance image once
  the files are chowned to the kvm group.

  nova 3:26.1.0-0ubuntu1~cloud0
  libvirt 8.0.0-1ubuntu7.4

  I've found the problem in puppet jobs. (example https://zuul.opendev.org/t/openstack/build/d6f2fb2e92ad4ece86bcd3d8793bf920 )
  Example error in nova can be found here: https://2e4f6457af6d4bb29c73-cc818d493c2a52ef4d37701157d67702.ssl.cf2.rackcdn.com/877214/2/check/puppet-openstack-integration-7-scenario002-tempest-ubuntu-jammy/d6f2fb2/logs/nova/nova-compute.txt

  I've tested adding the nova user to the kvm group and confirmed this fixes the error.
  https://review.opendev.org/c/openstack/puppet-openstack-integration/+/877338

  [Test Case]
  At the most basic level we can install the nova-compute-qemu package on a machine, and install the nova-compute-kvm package on another machine, and compare the directory and file modes under the /var/lib/nova/ tree.

  I'm sure Takashi will be able to give feedback on the fix as well.

  [Regression Potential]
  This is fixing a regression. We already add the nova user to the kvm group as part of the nova-compute-kvm postinst script, and this fix is doing the same for the nova-compute-qemu postinst script. I don't foresee any new regressions as a result of this.

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-archive/+bug/2011535/+subscriptions




More information about the Ubuntu-openstack-bugs mailing list