Public network is assigned to random interface on virtualbox installation

Bug #1261718 reported by Dmitry Pyzhov
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Fix Released
High
Aleksey Kasatkin

Bug Description

On some clusters public network is on eth1 interface, on some clusters is on eth2.

Expected behavior: on virtualbox installation it always must be on the same interface, for example eth1. Installation should have internet access.

Tags: nailgun
Revision history for this message
Dmitry Pyzhov (dpyzhov) wrote :
Revision history for this message
Dmitry Pyzhov (dpyzhov) wrote :
description: updated
Changed in fuel:
assignee: Fuel Python Team (fuel-python) → Aleksey Kasatkin (alekseyk-ru)
Changed in fuel:
status: Confirmed → In Progress
Revision history for this message
Mike Scherbakov (mihgen) wrote :

Are you sure it is random?
For me I believe it is always same for Neutron VLAN mode (see screenshot) - where public net is on eth1.

I would expect it to be on eth2, because of the following default config in vbox scripts:
vboxnet0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
 ether 0a:00:27:00:00:00
 inet 10.20.0.1 netmask 0xffffff00 broadcast 10.20.0.255
vboxnet1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
 ether 0a:00:27:00:00:01
 inet 172.16.1.1 netmask 0xffffff00 broadcast 172.16.1.255
vboxnet2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
 ether 0a:00:27:00:00:02
 inet 172.16.0.1 netmask 0xffffff00 broadcast 172.16.0.255

and 172.16.0.0/24 subnet used for public range, so after deployment I can login to Horizon via public network.

Unfortunately it is not the case at the moment.

Revision history for this message
Mike Scherbakov (mihgen) wrote :
Revision history for this message
Aleksey Kasatkin (alekseyk-ru) wrote :

It's not random but sorting in DB is based on NIC.id not on NIC.name so it depends on order of NICs in request JSON when node is added.

Revision history for this message
Mike Scherbakov (mihgen) wrote :

> Installation should have internet access.
looks like it has nothing to do with this particular issue. Dmitry, what did you mean here?

Revision history for this message
Anastasia Palkina (apalkina) wrote :

I't not random. Logic is:
1) case with GRE segmentation
eth0 -> admin
eth1 -> empty
eth2 -> public, storage, management
2) case with VLAN segmentation
eth0 -> admin
eth1 -> public, storage, management
eth2 -> private
3) case with nova-network
eth0 -> admin
eth1 -> empty
eth2 -> public, floating, storage, management, fixed

For case with nova-network (and may be GRE): after successful deployment I cannot ping 8.8.8.8 from controller and computes

Revision history for this message
Aleksey Kasatkin (alekseyk-ru) wrote :

Let's use eth1 for Public as nodes are not required to have 3 NICs in 2 of 3 configurations.

Revision history for this message
Aleksey Kasatkin (alekseyk-ru) wrote :

to apalkina:
Your case is true for some fixed incoming order of NICs but it's (incoming order of NICs) not always the same.

Revision history for this message
Andrey Danin (gcon-monolake) wrote :

Okay, guys. I propose:
1) order NICs by name when the networks are assigned
2) make sure we assign the Public network before the Private network in Neutron VLAN mode
3) change 'virtualbox/config.sh' in fuel-main repo to spawn 'vboxnet1' with IP net 172.16.0.0/24

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-web (master)

Fix proposed to branch: master
Review: https://review.openstack.org/62709

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-main (master)

Fix proposed to branch: master
Review: https://review.openstack.org/62817

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-web (master)

Reviewed: https://review.openstack.org/62709
Committed: https://git.openstack.org/cgit/stackforge/fuel-web/commit/?id=2ceae8dbf4ba9abe4ad1e3cbe8c91477ec65fc77
Submitter: Jenkins
Branch: master

commit 2ceae8dbf4ba9abe4ad1e3cbe8c91477ec65fc77
Author: Aleksey Kasatkin <email address hidden>
Date: Tue Dec 17 18:48:27 2013 +0200

    Public network is assigned to second NIC

    Public network is assigned to second NIC (by NIC name) when Admin NIC is the first one.
    It is assigned to the first NIC when Admin NIC is not the first.
    Tests added.

    Closes-Bug: #1261718

    Change-Id: Iee978d5ec8396a607735a8880645cc57bbb33b64

Changed in fuel:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-main (master)

Reviewed: https://review.openstack.org/62817
Committed: https://git.openstack.org/cgit/stackforge/fuel-main/commit/?id=aeea2a7881ec575bffdb4f925dfb44f484abdef2
Submitter: Jenkins
Branch: master

commit aeea2a7881ec575bffdb4f925dfb44f484abdef2
Author: Aleksey Kasatkin <email address hidden>
Date: Tue Dec 17 19:21:58 2013 +0200

    VirtualBox vboxnet1 and vboxnet2 got exchanged

    Public network must be on eth1 now.
    So public addresses must be at vboxnet1.

    Change-Id: Ia7f359371db14b1bf7fc01fd274eac0cdbf0e999
    Closes-Bug: #1261718

Dmitry Pyzhov (dpyzhov)
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.