Bug 1478480 - RHOS: Adapt to qemu-kvm-rhev packaging layout changes
RHOS: Adapt to qemu-kvm-rhev packaging layout changes
Status: NEW
Product: Red Hat OpenStack
Classification: Red Hat
Component: distribution (Show other bugs)
unspecified
Unspecified Unspecified
low Severity low
: ---
: ---
Assigned To: Lon Hohberger
Udi Shkalim
: Triaged
Depends On: 1425820 1478465 1588603 1588606 1378536
Blocks: 1447694 1447858
  Show dependency treegraph
 
Reported: 2017-08-04 11:58 EDT by Jeff Nelson
Modified: 2018-06-07 11:33 EDT (History)
26 users (show)

See Also:
Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1425820
Environment:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Jeff Nelson 2017-08-04 11:58:38 EDT
qemu-kvm-rhev packaging is being changed as described in BZ 1425820. We expect this to be a compatible change, but we also think this could give the RHOS team an opportunity to improve their packaging as well.

+++ This bug was initially created as a clone of Bug #1425820 +++

We now have modularization of the block layer in QEMU (bug #1378536) and libvirt (bug #1378540), but the QEMU packaging layout in RHEL might need changes for us to fully benefit from the changes.

For example, it should be possible to install QEMU without Gluster or Ceph block drivers (each brings a large number of dependencies).

BTW, I have not investigated this, but I have a report from Peter Krempa (libvirt) that "QEMU still can't be installed without gluster". I'm opening this BZ to request further investigation on what can be improved or changed in our packaging layout.

+++ This bug was initially created as a clone of Bug #1378536 +++

The reason to modularize the block layer in QEMU is to allow smaller/minimal installations of QEMU, with two primary use-cases:

1. Allow the split of the QEMU package, bringing less dependencies to a minimal installation. This is particularly important for the case of remote storage drivers, such as Ceph and Gluster, which usually link to and require external libraries and tools.

2. Faster startup of QEMU, with less drivers to load.

--- Additional comment from Ademar Reis on 2017-03-25 20:16:03 EDT ---

Let's leave this for RHEL-7.5, so we have enough time to test it. We'll also need clones of this BZ for RHV and OSP.
Comment 1 Stephen Gordon 2017-09-08 11:01:18 EDT
Lon, this ended up against you by default - will you be actioning or do we need to move it to a compute team member?
Comment 2 Kashyap Chamarthy 2017-09-12 09:45:50 EDT
tl;dr: So I just did some digging here.  And I don't see any action item on Nova here.

Long:

As of now, upstream libvirt hasn't done any special effort to have fine-grained dependencies on QEMU's packaging change[*].

Currently Nova's (rdo-dist-git, master) spec file has:

    Requires(pre):    qemu-kvm >= 2.3.0
    Requires:         libvirt-daemon-kvm

I.e. ensure that the QEMU package exists *during* the installation of Nova package.  And also ensure that 'libvirt-daemon-kvm' sub-package exists during run-time.

And libvirt's spec file, for the 'libvirt-daemon-kvm' sub-package has:

    Requires: qemu-kvm

The above means, libvirt will pull in ALL QEMU block drivers.

And since Nova 'Requires:' libvirt-daemon-kvm package, we will also get all the QEMU block drivers.


[*] http://pkgs.fedoraproject.org/cgit/rpms/qemu.git/commit/?id=ecbe006 -- Create subpackages for modularized qemu block drivers (RHBZ#1393688).

Note You need to log in before you can comment on or make changes to this bug.