RDO tickets are now tracked in Jira https://issues.redhat.com/projects/RDO/issues/
Bug 1367696 - Add RPM deps to require install of qemu-kvm-rhev, not qemu-kvm-rhel
Summary: Add RPM deps to require install of qemu-kvm-rhev, not qemu-kvm-rhel
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: RDO
Classification: Community
Component: openstack-nova
Version: trunk
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: RC
: trunk
Assignee: Stephen Finucane
QA Contact: Prasanth Anbalagan
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-08-17 09:07 UTC by Daniel Berrangé
Modified: 2017-07-05 13:29 UTC (History)
22 users (show)

Fixed In Version: openstack-nova-14.0.0-0.2.0rc1.el7
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1392820 (view as bug list)
Environment:
Last Closed: 2017-07-05 13:29:26 UTC
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
RDO 1900 0 None None None 2016-08-22 17:38:28 UTC

Description Daniel Berrangé 2016-08-17 09:07:52 UTC
Description of problem:
We've had a number of problems where users of RHOS have installed qemu-kvm-rhel (from base RHEL) instead of the correct qemu-kvm-rhev package. We explicitly do not support qemu-kvm-rhel in combination with RHOS, and it lacks key functionality that Nova expects.

Currently openstack-nova.spec has a plain 'Requires: qemu-kvm', which allows either qemu-kvm-rhel or qemu-kvm-rhev to be installed.

We should tighten this to only permit qemu-kvm-rhev to be installed.

We should also include a version dependancy to force qemu-kvm-rhev to be installed with the minimum version we test with.

ie, for a RHOS release tested aganist RHEL-7.3, we should include the version of qemu-kvm-rhev from 7.3, to prevent users running that RHOS release against qemu-kvm-rhev from 7.2 or earlier.


Version-Release number of selected component (if applicable):
12.0.4-6


How reproducible:
Always

Steps to Reproduce:
1. Install qemu-kvm-rhel
2. Install openstack-nova
3.

Actual results:
openstack-nova is successfully instaled

Expected results:
RPM / YUM should refuse to install openstack-nova due to qemu-kvm-rhel being present

Additional info:

Comment 2 David Moreau Simard 2016-08-22 17:07:42 UTC
So https://review.rdoproject.org/r/#/c/1900/ was submitted to change qemu-kvm into qemu-kvm-(rh)ev in RDO.

However, we can't do that in RDO because RDO does not carry qemu-kvm-ev.
On CentOS, the qemu-kvm-ev package comes from the CentOS virt SIG repository (centos-release-qemu-ev package), on OSP I believe it comes bundled.

Nova /will/ work with qemu-kvm, however, as you mention, there are some improvements/fixes that are only prevent in qemu-kvm-ev.
Since the qmeu-kvm-ev package obsoletes qemu-kvm, it will always be installed if available.

If we want to make qemu-kvm-(rh)ev a hard requirement, that is fine but we need to see how we can address this in RDO first (and this should be filed against the openstack-nova component of RDO)

Comment 3 Alan Pevec 2016-08-22 17:17:15 UTC
> Steps to Reproduce:
> 1. Install qemu-kvm-rhel

This should not happen with recommended installer which should have correct repositories enabled, in which case qemu-kvm-rhev will always win.

> Expected results:
> RPM / YUM should refuse to install openstack-nova

Expected result should be that yum install openstack-nova pulls correct qemu-kvm variant, i.e. upgrades "plain" qemu-kvm from base RHEL to qemu-kvm-rhev.
But again, that would only happen if "plain" qemu-kvm was pre-provisioned.

Comment 4 Daniel Berrangé 2016-08-22 17:43:10 UTC
(In reply to David Moreau Simard from comment #2)
> So https://review.rdoproject.org/r/#/c/1900/ was submitted to change
> qemu-kvm into qemu-kvm-(rh)ev in RDO.
> 
> However, we can't do that in RDO because RDO does not carry qemu-kvm-ev.
> On CentOS, the qemu-kvm-ev package comes from the CentOS virt SIG repository
> (centos-release-qemu-ev package), on OSP I believe it comes bundled.
> 
> Nova /will/ work with qemu-kvm, however, as you mention, there are some
> improvements/fixes that are only prevent in qemu-kvm-ev.
> Since the qmeu-kvm-ev package obsoletes qemu-kvm, it will always be
> installed if available.
> 
> If we want to make qemu-kvm-(rh)ev a hard requirement, that is fine but we
> need to see how we can address this in RDO first (and this should be filed
> against the openstack-nova component of RDO)

If we want to upstream this in ROD then we simply need to make the Requires statement conditional, so it uses qemu-kvm-rhev when built in RHEL, and qemu-kvm-ev when built in CentOS.

Comment 5 Daniel Berrangé 2016-08-22 17:46:41 UTC
(In reply to Alan Pevec from comment #3)
> > Steps to Reproduce:
> > 1. Install qemu-kvm-rhel
> 
> This should not happen with recommended installer which should have correct
> repositories enabled, in which case qemu-kvm-rhev will always win.

We want to guarantee that we get the right qemu-kvm-rhev, regardless of the install method users have taken. We have seen support requests where customers have got the wrong version install. Just relying on the recommended installer is not sufficient because not everyone uses the unmodified installer we provide - they'll customize things or roll their own.  THe explicit RPM dependancy on qemu-kvm-rhev is the only way to get the strict guarantee we want.

Comment 6 Jon Schlueter 2016-08-22 17:52:12 UTC
If we use something like qemu-kvm >= 2.3.0 this would handle making sure we get the features we need.


qemu-kvm-1.5.3-105.el7                    rhel-7.2
qemu-kvm-ev-2.3.0-31.el7_2.16.1           virt7-kvm-common-release 
qemu-kvm-rhev-2.3.0-31.el7_2.21           rhevh-rhel-7.2

Comment 7 Alan Pevec 2016-08-22 17:53:09 UTC
Requires: qemu-kvm >= 2.3.0
is all we need, b/c qemu-kvm-{rh}ev has correct Provides and base RHEL qemu-kvm is frozen at 1.5.3
This also works for Fedora (24 has 2.6) and RHEL with correct repositories enabled.
And if required repositories are not enabled, user will get easy to debug error message.

Comment 11 Javier Peña 2016-08-23 15:24:24 UTC
(In reply to Alan Pevec from comment #7)
> Requires: qemu-kvm >= 2.3.0
> is all we need, b/c qemu-kvm-{rh}ev has correct Provides and base RHEL
> qemu-kvm is frozen at 1.5.3
> This also works for Fedora (24 has 2.6) and RHEL with correct repositories
> enabled.
> And if required repositories are not enabled, user will get easy to debug
> error message.

But this won't work with CentOS, unless the Cloud SIG repo is enabled. This is only done today via the centos-release-openstack-mitaka repo, do we want to make this a hard requirement?

Comment 14 Alan Pevec 2016-08-24 13:14:41 UTC
> But this won't work with CentOS, unless the Cloud SIG repo is enabled. This
> is only done today via the centos-release-openstack-mitaka repo, do we want
> to make this a hard requirement?

Yes, VirtSIG repo will be added in rdo-release >= newton:
https://github.com/redhat-openstack/rdo-release/pull/6

Comment 21 Alan Pevec 2016-09-23 22:30:51 UTC
In RDO Newton testing repo.


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