Bug 1126982

Summary: Rubygem-Staypuft: Using identical HW in the same deployment will fail the deployment because the NICs are sometimes named differently.
Product: Red Hat OpenStack Reporter: Alexander Chuzhoy <sasha>
Component: rhel-osp-installerAssignee: Dan Radez <dradez>
Status: CLOSED ERRATA QA Contact: Omri Hochman <ohochman>
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: aberezin, dnavale, dradez, lnatapov, mburns, morazi, ohochman, rhos-maint, sasha, sclewis, sgordon, yeylon
Target Milestone: ga   
Target Release: Installer   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: rhel-osp-installer-0.1.10-2.el6ost Doc Type: Bug Fix
Doc Text:
Previously, both 'biosdevname' and 'net.ifnames' were enabled by default, resulting in some hosts booting with 'biosdevname' NICs and other using 'net.ifnames'. With this update, 'biosdevname' has been disabled and all hosts now use the 'net.ifnames' (for example, ens8).
Story Points: ---
Clone Of:
: 1131639 (view as bug list) Environment:
Last Closed: 2014-08-21 18:08:12 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1131639    

Description Alexander Chuzhoy 2014-08-05 18:49:11 UTC
Rubygem-Staypuft:  Using different HW in the same deployment may fail the deployment because the NICs are named differently.


Environment:
rhel-osp-installer-0.1.6-5.el6ost.noarch
openstack-foreman-installer-2.0.16-1.el6ost.noarch
ruby193-rubygem-foreman_openstack_simplify-0.0.6-8.el6ost.noarch
openstack-puppet-modules-2014.1-19.9.el6ost.noarch

If different HW is used on bare metal setups, then the NIC specified for external or tenant network in the "service configuration" page might be different for one or more nodes. This will result in a failed deployment.

Today we're forced to use the same HW, to assure NICs on nodes are named exactly the same.

Comment 1 Mike Burns 2014-08-07 22:30:29 UTC
This can only be fixed with the network provisioning which is coming in A2

Comment 2 Alexander Chuzhoy 2014-08-12 18:45:32 UTC
Was able to get all the identical servers to report the same NIC name after adding "biosdevname=0" to the kernel line.

Comment 6 Arthur Berezin 2014-08-17 16:28:35 UTC
(In reply to Alexander Chuzhoy from comment #2)
> Was able to get all the identical servers to report the same NIC name after
> adding "biosdevname=0" to the kernel line.

I think we discussed that this would not always work with EL7.
A1 sprint(Network phase) will allow to configuring individual hosts and will enable configuring each hardware as needed.

Comment 7 Mike Orazi 2014-08-18 13:26:17 UTC
The behavior QE was seeing differed from our understanding of how biosdevname was supposed to act.  This presently appears like a reasonably way to let QE move forward on pre-A1 code fairly consistently until we get network management in place.

Comment 8 Omri Hochman 2014-08-18 14:45:52 UTC
The solution in comment #2 is valid when using same HW.  When using different HW We will still have problem of getting different nic names -
Adding : request for 'RN ?' .

Comment 9 Dan Radez 2014-08-19 14:23:17 UTC
Could you verify that biosdevname=0 ended up in the kernel line please? Just want to make sure the change we made did actually land even if it ends up not being the right fix.

I don't have a set of different machines to develop a solution for different hardware.

Comment 10 Mike Burns 2014-08-19 18:11:05 UTC
(In reply to Dan Radez from comment #9)
> Could you verify that biosdevname=0 ended up in the kernel line please? Just
> want to make sure the change we made did actually land even if it ends up
> not being the right fix.
> 
> I don't have a set of different machines to develop a solution for different
> hardware.

Yes, we're settingthe value correctly.  

After discussion, this bug has been cloned to the next release.  The title has been updated.

What was fixed as part of this bug:

Machines with the same hardware will now get the same nic names because biosdevname is disabled.

What the cloned bug will deal with:  different hardware profiles.

Comment 11 Alexander Chuzhoy 2014-08-19 21:22:31 UTC
Reply to comment #9:
The string is there:
[root@mac047d7b61765e ~]# grep -o 'biosdevname=0' /proc/cmdline
biosdevname=0

Comment 12 Alexander Chuzhoy 2014-08-19 22:15:03 UTC
Verified:rhel-osp-installer-0.1.10-2.el6ost.noarch

Using the same HW and specifing the right NICs for tenant/external connection results in successful deployment.

Comment 14 errata-xmlrpc 2014-08-21 18:08:12 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, and where to find the updated
files, follow the link below.

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

http://rhn.redhat.com/errata/RHBA-2014-1090.html