[fuel-bootstrap] netifnames not work with admin interface

Bug #1524303 reported by Aleksey Zvyagintsev
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Fix Released
High
Aleksey Zvyagintsev

Bug Description

Netifnames logging doesn't applies for admin interface, in ubuntu bootstrap

Changed in fuel:
status: Confirmed → In Progress
Dmitry Pyzhov (dpyzhov)
tags: added: team-telco
removed: team-ubuntu
Changed in fuel:
assignee: asyriy (asyriy) → Aleksey Zvyagintsev (azvyagintsev)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-agent (master)

Reviewed: https://review.openstack.org/254323
Committed: https://git.openstack.org/cgit/openstack/fuel-agent/commit/?id=2f18b7596bc7da79d2f28c34f42620b2090d8a35
Submitter: Jenkins
Branch: master

commit 2f18b7596bc7da79d2f28c34f42620b2090d8a35
Author: Albert <email address hidden>
Date: Mon Dec 7 19:29:08 2015 +0200

    Workaround to let rename udev interface using as PXE on Ubuntu bootstrap

     Passing kernel parameters biosdevname=0 and net.ifnames=1 enable
     persistant interface naming schema and disable 75-persistent-net-generator.rules

     The interface is used for PXE booting is eth0 interface (because it becomes up
      the very first).
     Since Ubuntu uses Upstart-udev-bridge to communicate to udev the udev events
      (renaming interfaces) are processed quite later, when the eth0 interface is
      in the UP state and /etc/network/interfaces (config file) has been created.
     When udev attempts to rename the eth0 interface it receives "device busy"
      message (because eth0 is in UP state).
     To let the eth0 interface be renamed the following steps are used in
     the /usr/bin/let-rename script:

    1. Scan the interfaces to figure out which one is in the active (UP) state and
       has not been renamed. Because we have just one PXE interface, we are looking
       for that interface (all others in the down state).
    2. The state of the found interface is changed to DOWN (release DHCP leases) by the
       command:
        ifdown $intf
    3. The current interface name ($oldname) and MAC address ($macaddr) of the
       interface are saved and will be handy later.
    4. The udev event (for subsystem net, action add) is issued, which forces
       renaming of the eth0 to a new name by the commands:
        udevadm trigger --subsystem-match=net --action=add
        udevadm settle
    5. At that point interface's name (eth0) has been changed and we are looking
       for interface which MAC address is equal to the remembered MAC address of
       the former eth0. Found new name (of the renamed eth0 interface) is saved in
       the $newname variable.
    6. Update /etc/network/interfaces (config file) by substituting all $oldname
       of the interface to the $newname by the command:
        sed -i -e "s/$oldname/$newname/g" /etc/network/interfaces
    7. Enabling the renamed interface by the command
       ifup $newname

    Change-Id: I80d65ba597f4b6361d67a629c4627739afd37116
    Implements: blueprint network-interfaces-naming-schema
    Closes-Bug: #1524303

Changed in fuel:
status: In Progress → Fix Released
Changed in fuel:
status: Fix Released → Fix Committed
Revision history for this message
Dmitry Kalashnik (dkalashnik) wrote :

Validated on ISO 362

Changed in fuel:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.