This service will be undergoing maintenance at 00:00 UTC, 2017-10-23 It is expected to last about 30 minutes
Bug 1317125 - hosted engine deployment fails when ovirtmgmt bridge is manually created
hosted engine deployment fails when ovirtmgmt bridge is manually created
Status: CLOSED WONTFIX
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: ovirt-hosted-engine-setup (Show other bugs)
3.6.3
Unspecified Unspecified
low Severity low
: ovirt-4.0.0-alpha
: 4.0.0
Assigned To: Simone Tiraboschi
Nikolai Sednev
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2016-03-12 02:33 EST by Roman Hodain
Modified: 2017-09-24 03:53 EDT (History)
9 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2016-03-20 10:19:34 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: Integration
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Knowledge Base (Solution) 2199501 None None None 2016-03-15 10:28 EDT

  None (edit)
Description Roman Hodain 2016-03-12 02:33:05 EST
Description of problem:
When ovirtmgmt bridge is manually created by the user. For example by using ifcfg-* files. The hosted engine deployment will fail.

Version-Release number of selected component (if applicable):
ovirt-hosted-engine-setup-1.3.3.4-1.el7ev

How reproducible:
100%

Steps to Reproduce:
1. Fresh installation of RHEL7
2. Install required packages for hosted engine
3. configure the ovirtmgmt bridge via ifcfg-& file
4. run hosted-engine --deploy and provide information so the deployment can start.

Actual results:
2016-03-11 13:58:01 DEBUG otopi.context context._executeMethod:156 method exception
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/otopi/context.py", line 146, in _executeMethod
    method['method']()
  File "/usr/share/ovirt-hosted-engine-setup/scripts/../plugins/ovirt-hosted-engine-setup/network/bridge.py", line 295, in _get_hostname_from_bridge_if
    raise RuntimeError(_('Cannot acquire bridge address'))
RuntimeError: Cannot acquire bridge address
2016-03-11 13:58:01 ERROR otopi.context context._executeMethod:165 Failed to execute stage 'Setup validation': Cannot acquire bridge address

Expected results:
There are two possible approaches:

   - Hosted-engine-setup will handle this properly and finish the installation.

   - Hosted-engine-setup will exit with reasonable error message.

Additional info:

This issue is caused by the fact that is the hosted engine detects that the ovirtmgmt bridge exists and expects that vdsm is aware of a network called ovirtmgmt. Vdsm is not aware of any network called ovirtmgmt as the bridge was set manually by an admin. The list of networks provide by vdsm is empty at this stage.
Comment 1 Yaniv Kaul 2016-03-13 03:50:03 EDT
Roman - why would the bridge be set manually? Is that supported?
Comment 2 Roman Hodain 2016-03-15 07:57:33 EDT
(In reply to Yaniv Kaul from comment #1)
> Roman - why would the bridge be set manually? Is that supported?
Well we do not ask the user to create the bridge, but we do not say that it is supported or not. The problem is that it is really not clear why the deployment failed. The tool should react properly and provide proper information why it fails. This is a corner case, but still it should be handled.
Comment 3 Yaniv Kaul 2016-03-15 08:21:17 EDT
(In reply to Roman Hodain from comment #2)
> (In reply to Yaniv Kaul from comment #1)
> > Roman - why would the bridge be set manually? Is that supported?
> Well we do not ask the user to create the bridge, but we do not say that it
> is supported or not. The problem is that it is really not clear why the
> deployment failed. The tool should react properly and provide proper
> information why it fails. This is a corner case, but still it should be
> handled.

I'm in favor of agreeing it's unsupported. There are so many unsupported scenarios - we can't list them all.
Comment 4 Simone Tiraboschi 2016-03-15 09:09:07 EDT
By the way running hosted-engine-setup on an host where the management bridge has been created by a previous attempt is not an issue and VDSM, and so hosted-engine-setup, recognizes it.

The issue is just where the bridge has been manually created and due to some other reasons is not recognized by VDSM.
Comment 8 Yaniv Lavi (Dary) 2016-03-20 10:19:34 EDT
(In reply to Yaniv Kaul from comment #3)
> (In reply to Roman Hodain from comment #2)
> > (In reply to Yaniv Kaul from comment #1)
> > > Roman - why would the bridge be set manually? Is that supported?
> > Well we do not ask the user to create the bridge, but we do not say that it
> > is supported or not. The problem is that it is really not clear why the
> > deployment failed. The tool should react properly and provide proper
> > information why it fails. This is a corner case, but still it should be
> > handled.
> 
> I'm in favor of agreeing it's unsupported. There are so many unsupported
> scenarios - we can't list them all.

ack. closing.
Comment 9 Ari Lemmke 2017-09-10 07:17:30 EDT
First of all if you have this kind of things built in you
should _always_ check preconditions.
(I do know it is a mental thing. pun intended)

Our case is that the only connection to that blade is through
ovirtmgmt which is on bond0.2190 which is on bond0 which is on
enp2s0f0 and enp2s0f1 and the system is closed. No other way to connect
using a network. and that is going to be the only way to connect to
the system.

//arl        Ari Lemmke (look Wikipedia)

(self censored most of text I would have written, sorry)
Comment 10 Yaniv Kaul 2017-09-10 09:12:06 EDT
Perhaps we should improve the error message, and suggest to change the value of VEHOSTED_NETWORK/bridgeIf ?
Comment 11 Sandro Bonazzola 2017-09-20 04:38:00 EDT
(In reply to Yaniv Kaul from comment #10)
> Perhaps we should improve the error message, and suggest to change the value
> of VEHOSTED_NETWORK/bridgeIf ?

No problem for me adding better error text. Simone can you handle in a separate BZ?

(In reply to Ari Lemmke from comment #9)

> Our case is that the only connection to that blade is through
> ovirtmgmt which is on bond0.2190 which is on bond0 which is on
> enp2s0f0 and enp2s0f1 and the system is closed. No other way to connect
> using a network. and that is going to be the only way to connect to
> the system.

Simone, chance that this case can be handled by engine if we deploy hosted engine as in Jenny's POC?
Comment 12 Simone Tiraboschi 2017-09-20 05:40:47 EDT
(In reply to Yaniv Kaul from comment #10)
> Perhaps we should improve the error message, and suggest to change the value
> of VEHOSTED_NETWORK/bridgeIf ?

It's not just that: with OVEHOSTED_NETWORK/bridgeName we could honor a custom management bridge name if we are going to restore a backup of a previously existing engine where the management bridge has been customized but it will not force a custom name into a freshly deployed engine.

See:
https://bugzilla.redhat.com/show_bug.cgi?id=1231799#c24


With OVEHOSTED_NETWORK/bridgeIf instead we can choose the interface to build the management bridge on but I don't see any reason to force it via answer file since bond0.2190 is a valid name and hosted-engine-setup should be able to detect it and propose it as the default choice.
Comment 13 Simone Tiraboschi 2017-09-20 05:42:47 EDT
(In reply to Sandro Bonazzola from comment #11)
> Simone, chance that this case can be handled by engine if we deploy hosted
> engine as in Jenny's POC?

AFAIK no since the boostrap VM should still be started over a management bridge in order to be able to use the engine there to deploy the host.
Better to wait for Jenny confirmation here.
Comment 14 Jenny Tokar 2017-09-24 03:53:24 EDT
(In reply to Simone Tiraboschi from comment #13)
> AFAIK no since the boostrap VM should still be started over a management
> bridge in order to be able to use the engine there to deploy the host.
> Better to wait for Jenny confirmation here.

Actually, since adding the ovirtmgmt bridge manually causes issues with engine deployment the bootstrap vm will be started over libvirt default bridge and the engine host setup will handle the network and will add the ovirtmgmt bridge to the host.

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