Bug 1229396 - Hosted Engine can't be installed anymore on EL7 due to unsupported machine emulation
Summary: Hosted Engine can't be installed anymore on EL7 due to unsupported machine em...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: ovirt-engine
Classification: oVirt
Component: General
Version: ---
Hardware: Unspecified
OS: Unspecified
urgent
urgent
Target Milestone: ovirt-3.6.0-rc
: 3.6.0
Assignee: Martin Polednik
QA Contact: Nikolai Sednev
URL:
Whiteboard: virt
Depends On:
Blocks: 1036731 1229666
TreeView+ depends on / blocked
 
Reported: 2015-06-08 15:25 UTC by Sandro Bonazzola
Modified: 2016-02-10 19:24 UTC (History)
11 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 1229666 (view as bug list)
Environment:
Last Closed: 2015-11-27 07:51:35 UTC
oVirt Team: Virt
Embargoed:
rule-engine: ovirt-3.6.0+
rule-engine: blocker+
ylavi: planning_ack+
rule-engine: devel_ack+
rule-engine: testing_ack+


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
oVirt gerrit 42082 0 master MERGED caps: workaround for libvirt's canonical name in machine types Never
oVirt gerrit 45155 0 ovirt-3.5 ABANDONED caps: workaround for libvirt's canonical name in machine types Never

Description Sandro Bonazzola 2015-06-08 15:25:56 UTC
Host hosted_engine_1 does not comply with the cluster Default emulated machines. The current cluster compatibility level supports [pc-i440fx-rhel7.1.0, pc-i440fx-2.1, pseries-rhel7.1.0] and the host emulated machines are pc,rhel6.6.0,pc-q35-rhel7.0.0,rhel6.4.0,q35,pc-i440fx-rhel7.0.0,rhel6.2.0,rhel6.1.0,rhel6.5.0,rhel6.0.0,rhel6.3.0.

Comment 1 Sandro Bonazzola 2015-06-08 15:29:18 UTC
Michal, is this due to requirement on qemu-kvm-rhev targeted to RHEL 7.2?

Comment 2 Michal Skrivanek 2015-06-08 19:56:42 UTC
No, this requires 7.1 whereas you're running 7.0 it seems
When does this happen?

Comment 3 Sandro Bonazzola 2015-06-09 05:00:56 UTC
It happens while adding the host RHEL7.1.z to an engine running on RHEL6.7 the qemu-kvm installed is the one coming from oVirt repository. 
qemu-kvm-ev-2.1.2-23.el7_1.3.1

Comment 4 Michal Skrivanek 2015-06-09 05:11:43 UTC
I wonder what's the source package or compile options. Afaik rhel 7.1 qemu has 7.1 machine type. Can you doublecheck "qemu-kvm -M ?" output?

Comment 5 Sandro Bonazzola 2015-06-09 06:40:25 UTC
(In reply to Michal Skrivanek from comment #4)
> I wonder what's the source package or compile options. Afaik rhel 7.1 qemu
> has 7.1 machine type. Can you doublecheck "qemu-kvm -M ?" output?

Seriously, sometimes it seems you and I are working on different projects.
qemu-kvm-ev has been built from ftp://ftp.redhat.com/pub/redhat/linux/enterprise/7Server/en/RHEV/SRPMS/qemu-kvm-rhev-2.1.2-23.el7_1.3.src.rpm
It's in master snapshot since the VENOM vulnerability fix.


# /usr/libexec/qemu-kvm -M help
Supported machines are:
pc                   RHEL 7.1.0 PC (i440FX + PIIX, 1996) (alias of pc-i440fx-rhel7.1.0)
pc-i440fx-rhel7.1.0  RHEL 7.1.0 PC (i440FX + PIIX, 1996) (default)
pc-i440fx-rhel7.0.0  RHEL 7.0.0 PC (i440FX + PIIX, 1996)
rhel6.6.0            RHEL 6.6.0 PC
rhel6.5.0            RHEL 6.5.0 PC
rhel6.4.0            RHEL 6.4.0 PC
rhel6.3.0            RHEL 6.3.0 PC
rhel6.2.0            RHEL 6.2.0 PC
rhel6.1.0            RHEL 6.1.0 PC
rhel6.0.0            RHEL 6.0.0 PC
q35                  RHEL-7.1.0 PC (Q35 + ICH9, 2009) (alias of pc-q35-rhel7.1.0)
pc-q35-rhel7.1.0     RHEL-7.1.0 PC (Q35 + ICH9, 2009)
pc-q35-rhel7.0.0     RHEL-7.0.0 PC (Q35 + ICH9, 2009)
none                 empty machine

it's VDSM which reports:

        emulatedMachines = ['pc',
                            'rhel6.6.0',
                            'pc-q35-rhel7.0.0',
                            'rhel6.4.0',
                            'q35',
                            'pc-i440fx-rhel7.0.0',
                            'rhel6.2.0',
                            'rhel6.1.0',
                            'rhel6.5.0',
                            'rhel6.0.0',
                            'rhel6.3.0']

Comment 6 Sandro Bonazzola 2015-06-09 06:41:52 UTC
# rpm -qv vdsm
vdsm-4.17.0-925.gitd18e2f1.el7.noarch

Comment 7 Michal Skrivanek 2015-06-09 06:48:30 UTC
well, when things are odd and you're desperate you need to consider all crazy possibilities:-)

looks like vdsm bug!

Comment 8 Michal Skrivanek 2015-06-09 10:38:17 UTC
well, actually a libvirt bug, but we better get a workaround asap

Comment 9 Michal Skrivanek 2015-06-09 13:11:25 UTC
Workarounds: 
use after_get_caps hook and add 'pc-i440fx-rhel7.1.0' to the list of emulatedMachines list

Comment 10 Simone Tiraboschi 2015-06-17 10:29:11 UTC
(In reply to Michal Skrivanek from comment #9)
> Workarounds: 
> use after_get_caps hook and add 'pc-i440fx-rhel7.1.0' to the list of
> emulatedMachines list

just to make it easier:
create /usr/libexec/vdsm/hooks/after_get_caps/10_fakeemulatedmachine
the file must be readable and executable by vdsm

and add there:
import hooking
if __name__ == '__main__':
    caps = hooking.read_json()
    caps['emulatedMachines'].append('pc-i440fx-rhel7.1.0')
    hooking.write_json(caps)

you could test it with 
vdsClient -s 0 getVdsCaps
checking than the emulatedMachines field

Comment 11 Max Kovgan 2015-06-28 14:12:45 UTC
ovirt-3.6.0-3 release

Comment 12 Red Hat Bugzilla Rules Engine 2015-09-22 07:43:39 UTC
This bug report has Keywords: Regression or TestBlocker.
Since no regressions or test blockers are allowed between releases, it is also being identified as a blocker for this release. Please resolve ASAP.

Comment 13 Nikolai Sednev 2015-11-16 15:26:44 UTC
Hi Sandro,
Can you please provide the reproduction steps for the bug please?

Comment 14 Sandro Bonazzola 2015-11-16 15:38:17 UTC
(In reply to Nikolai Sednev from comment #13)
> Hi Sandro,
> Can you please provide the reproduction steps for the bug please?

Just deploy Hosted Engine. If it works, this bug has been verified.
Otherwise you'll have the error in bug description when it tries to spawn the VM.

Comment 15 Nikolai Sednev 2015-11-25 07:52:51 UTC
Works for me on these components:
ovirt-vmconsole-host-1.0.1-0.0.master.20151105234454.git3e5d52e.el7.noarch
ovirt-release36-002-2.noarch
ovirt-engine-sdk-python-3.6.0.4-0.2.20151123.gita2f81ed.el7.centos.noarch
sanlock-3.2.4-1.el7.x86_64
ovirt-setup-lib-1.0.1-0.0.master.20151119123055.gitfa908be.el7.centos.noarch
qemu-kvm-rhev-2.3.0-31.el7_2.3.x86_64
ovirt-hosted-engine-ha-1.3.3-0.0.master.20151118145556.20151118145552.git71b535e.el7.noarch
ovirt-vmconsole-1.0.1-0.0.master.20151105234454.git3e5d52e.el7.noarch
ovirt-release36-snapshot-002-2.noarch
libvirt-client-1.2.17-13.el7.x86_64
ovirt-hosted-engine-setup-1.3.1-0.0.master.20151118143825.gitc013638.el7.centos.noarch
ovirt-host-deploy-1.4.2-0.0.master.20151122153544.gitfc808fc.el7.noarch
vdsm-4.17.10.1-0.el7ev.noarch
mom-0.5.1-2.el7.noarch

# /usr/libexec/qemu-kvm -M help
Supported machines are:
pc                   RHEL 7.2.0 PC (i440FX + PIIX, 1996) (alias of pc-i440fx-rhel7.2.0)
pc-i440fx-rhel7.2.0  RHEL 7.2.0 PC (i440FX + PIIX, 1996) (default)
pc-i440fx-rhel7.1.0  RHEL 7.1.0 PC (i440FX + PIIX, 1996)
pc-i440fx-rhel7.0.0  RHEL 7.0.0 PC (i440FX + PIIX, 1996)
rhel6.6.0            RHEL 6.6.0 PC
rhel6.5.0            RHEL 6.5.0 PC
rhel6.4.0            RHEL 6.4.0 PC
rhel6.3.0            RHEL 6.3.0 PC
rhel6.2.0            RHEL 6.2.0 PC
rhel6.1.0            RHEL 6.1.0 PC
rhel6.0.0            RHEL 6.0.0 PC
q35                  RHEL-7.2.0 PC (Q35 + ICH9, 2009) (alias of pc-q35-rhel7.2.0)
pc-q35-rhel7.2.0     RHEL-7.2.0 PC (Q35 + ICH9, 2009)
pc-q35-rhel7.1.0     RHEL-7.1.0 PC (Q35 + ICH9, 2009)
pc-q35-rhel7.0.0     RHEL-7.0.0 PC (Q35 + ICH9, 2009)
none                 empty machine

Comment 16 Sandro Bonazzola 2015-11-27 07:51:35 UTC
Since oVirt 3.6.0 has been released, moving from verified to closed current release.

Comment 17 Marina Kalinin 2015-12-02 01:10:13 UTC
Hey Sandro, what is current release?
And what component is the fix?

I just opened this bug:
https://bugzilla.redhat.com/show_bug.cgi?id=1287299
And not sure how to treat it based on your bug.

Comment 18 Sandro Bonazzola 2015-12-14 15:36:46 UTC
Marina, the fixing package is qemu-kvm-rhev / qemu-kvm-ev >= 2.3.0.


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