boot baremetal server which has multi-interface will randomly choose baremetal server interface

Bug #1739735 reported by Liping Mao
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Won't Fix
Undecided
Unassigned

Bug Description

Description
===========
In my ironic environment, my baremetal node has two interface, we will register two ports with two macs into ironic. When tenant user boot baremetal server with one network, nova will randomly choose the one of the macs, baremetal server will randomly use eth0 / eth1 as its interface.

Steps to reproduce
==================
1. register baremetal server with multi interface.
2. boot a ironic server with one network

Expected result
===============
use eth0 as its interface

Actual result
=============
some of the ironic nodes will use eth0, but some will choose eth1.

Environment
===========
Newton, but this problem also existed in latest master.

Analysis
===========
We think the problem is because nova is using set for available_macs in allocate_for_instance (nova/network/neutronv2/api.py) . typically, eth0 will has small mac compare with eth1.
So maybe we can use list for available_macs, and use small mac first to create port.

Tags: ironic
Revision history for this message
Mark Goddard (mgoddard) wrote :

You can set the physical_network field of the ironic nodes' ports to obtain a deterministic port mapping. See the ironic docs [1] and spec [2].

[1] https://docs.openstack.org/ironic/pike/admin/multitenancy.html#physical-networks
[2]https://specs.openstack.org/openstack/ironic-specs/specs/not-implemented/physical-network-awareness.html

tags: added: ironic
Revision history for this message
Jim Rollenhagen (jim-rollenhagen) wrote :

Feels like this can be closed.

Revision history for this message
Sylvain Bauza (sylvain-bauza) wrote :

As it was stated above by the Ironic team, they provided a new feature for deterministicly provide the network ports.

Setting accordingly that bug report as Wontfix.

Changed in nova:
status: New → Won't Fix
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.