Bug 2004469 - [RHV 4.4.8] Unable to upgrade RHVH if vdsm-hook-ethtool-options is installed
Summary: [RHV 4.4.8] Unable to upgrade RHVH if vdsm-hook-ethtool-options is installed
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: vdsm
Version: 4.4.8
Hardware: All
OS: Linux
high
medium
Target Milestone: ovirt-4.4.9-1
: ---
Assignee: Ales Musil
QA Contact: peyu
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-09-15 11:53 UTC by Ulhas Surse
Modified: 2021-11-19 19:22 UTC (History)
20 users (show)

Fixed In Version:
Doc Type: Release Note
Doc Text:
Previously it was not possible to upgrade RHVH to version 4.4.8 when custom VDSM hooks were installed on RHVH. This was caused by the VDSM hooks dependency on the concrete version of VDSM. The current release allows users to maintain the VDSM dependency manually. In other words, if you want to upgrade from VDSM X.Y.Z to version A.B.C, you must upgrade all VDSM hooks to the same A.B.C version.
Clone Of:
Environment:
Last Closed: 2021-11-19 19:21:53 UTC
oVirt Team: Infra
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker RHV-43646 0 None None None 2021-09-15 12:04:46 UTC
Red Hat Knowledge Base (Solution) 6358432 0 None None None 2021-09-24 05:45:21 UTC
Red Hat Product Errata RHSA-2021:4750 0 None None None 2021-11-19 19:22:19 UTC
oVirt gerrit 116953 0 master MERGED spec: Require unversioned vdsm for hooks 2021-10-06 12:09:48 UTC
oVirt gerrit 116989 0 ovirt-4.4.z MERGED spec: Require unversioned vdsm for hooks 2021-10-06 12:41:08 UTC

Description Ulhas Surse 2021-09-15 11:53:38 UTC
Description of problem:

1] By default, this package is not installed in RHVH:

~~~
# rpm -qa| grep vdsm-hook-ethtool-options
~~~

2] If we try to installed with just the package name, it will try to search for vdsm version of 4.4.8 host with error:

~~~
# yum install vdsm-hook-ethtool-options
Error: 
 Problem: cannot install the best candidate for the job
  - nothing provides vdsm = 4.40.80.6-1.el8ev needed by vdsm-hook-ethtool-options-4.40.80.6-1.el8ev.noarch
~~~

3] If this package is installed with version information, then it can be installed in RHVH 4.3:

~~~
# yum install vdsm-hook-ethtool-options-4.40.70.6-1.el8ev
Persisting: vdsm-hook-ethtool-options-4.40.70.6-1.el8ev.noarch.rpm
Installed products updated.

Installed:
  vdsm-hook-ethtool-options-4.40.70.6-1.el8ev.noarch 
~~~


4] After this, if the upgrade of RHVH is tried, it will again fail with the same error:

~~~
Error: 
 Problem: cannot install the best update candidate for package vdsm-hook-ethtool-options-4.40.70.6-1.el8ev.noarch
  - nothing provides vdsm = 4.40.80.6-1.el8ev needed by vdsm-hook-ethtool-options-4.40.80.6-1.el8ev.noarch
~~~

5] So, yes, removing this package vdsm-hook-ethtool-options and upgrading the host is a workaround 

Version-Release number of selected component (if applicable):
RHVH 4.4.8

How reproducible:
Always

Steps to Reproduce:
1. Install a RHVH 4.4.7 
2. Either try to install package vdsm-hook-ethtool-options or do RHVH upgrade with yum update 
3. Upgrade/Install will fail.

Actual results:
Install fails

Expected results:
Install or Upgrade should work.

Additional info:

Comment 1 Martin Perina 2021-09-15 13:18:42 UTC
(In reply to Ulhas Surse from comment #0)
> Description of problem:
> 
> 1] By default, this package is not installed in RHVH:
> 
> ~~~
> # rpm -qa| grep vdsm-hook-ethtool-options
> ~~~
> 
> 2] If we try to installed with just the package name, it will try to search
> for vdsm version of 4.4.8 host with error:
> 
> ~~~
> # yum install vdsm-hook-ethtool-options
> Error: 
>  Problem: cannot install the best candidate for the job
>   - nothing provides vdsm = 4.40.80.6-1.el8ev needed by
> vdsm-hook-ethtool-options-4.40.80.6-1.el8ev.noarch
> ~~~
> 
> 3] If this package is installed with version information, then it can be
> installed in RHVH 4.3:
> 
> ~~~
> # yum install vdsm-hook-ethtool-options-4.40.70.6-1.el8ev
> Persisting: vdsm-hook-ethtool-options-4.40.70.6-1.el8ev.noarch.rpm
> Installed products updated.
> 
> Installed:
>   vdsm-hook-ethtool-options-4.40.70.6-1.el8ev.noarch 
> ~~~
> 
> 
> 4] After this, if the upgrade of RHVH is tried, it will again fail with the
> same error:
> 
> ~~~
> Error: 
>  Problem: cannot install the best update candidate for package
> vdsm-hook-ethtool-options-4.40.70.6-1.el8ev.noarch
>   - nothing provides vdsm = 4.40.80.6-1.el8ev needed by
> vdsm-hook-ethtool-options-4.40.80.6-1.el8ev.noarch
> ~~~
> 
> 5] So, yes, removing this package vdsm-hook-ethtool-options and upgrading
> the host is a workaround 
> 
> Version-Release number of selected component (if applicable):
> RHVH 4.4.8
> 
> How reproducible:
> Always
> 
> Steps to Reproduce:
> 1. Install a RHVH 4.4.7 
> 2. Either try to install package vdsm-hook-ethtool-options or do RHVH
> upgrade with yum update 
> 3. Upgrade/Install will fail.

If you have RHVH 4.4.7, then you need to install vdsm-hook-ethtool-options of the same version as it's include in the installed image. So in your case you probably have installed vdsm-4.40.70.6-1.el8ev you need to install vdsm-hook-ethtool-options-4.40.70.6-1.el8ev.
Or you need to upgrade to RHV 4.4.8 and then you can install latest version of vdsm-hook-ethtool-options package

Comment 6 Michal Skrivanek 2021-09-24 10:49:35 UTC
Given the experience with --nobest and ansible not too long ago, I wonder if that's the best way.
How about just skipping vdsm-* in the loop?

Comment 7 Michal Skrivanek 2021-09-24 10:55:20 UTC
and probably some code in imgbased to reinstall after upgrade, because IIUC right now we persist rpms and it's the old one that's there so it will not be reinstalled currently

Comment 8 Marcin Sobczyk 2021-10-05 14:27:27 UTC
AFAIU the problem is the result of removing the hooks from RHVH images and currently, if someone wants to have some of the vdsm hooks installed, he/she has to add some additional repositories.
Given that RHVH is supposed to be a hermetic environment we should definitely not try to install some arbitrary versions of the hook packages - they rely on vdsm interfaces and if the versions don't match, they simply might not work.
My suggestion would be to include an internal RPM repository that contains matching versions of the hook packages inside the RHVH image, so there's no need to add external ones and clients will always get the matching version of the hook package if desired.

Comment 9 Martin Perina 2021-10-06 09:10:53 UTC
Unfortunately we don't have any other feasible way to fix upgrade issue. We will need to remove a hook dependency to specific VDSM version and in future, if we will make some incompatible changes between VDSM and hooks, we will need to modify the code in a way that both VDSM and hooks will be backward/forward compatible (at least to the point the basic upgrade will work).

Comment 11 Sandro Bonazzola 2021-10-08 10:03:00 UTC
All referenced patches are merged, can this move to MODIFIED?

Comment 22 errata-xmlrpc 2021-11-19 19:21:53 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Important: Red Hat Virtualization Host security and bug fix update [ovirt-4.4.9] 0-day), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2021:4750


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