Howto set up neutron in a one-network-node scenario [closed]

asked 2014-02-17 16:53:38 -0600

miro gravatar image


after several days, I am on the brink of despair. I think I am almost there, but the last few inches are missing, namely, my neutron networking does not work.

I have followed several examples, but most of them in the reference guides are very complex with multiple compute nodes and I was unable to find the commands to set up seomething like that: (

Setup: The Controller node on management network, has another interface on, the performance network ("external network") where I would like to run tests on. The node is running nova, rabbitmq, mysql, glance, keystone.

The Compute node is on management net eth7 and has another interface on eth4, running nova-compute and neutron.

I can issue instances to be created on the compute node, and they get spawned and are running, but I cannot reach them.

All I would like to set up is that the compute node can spawn VMs, that get an externally reachable address on the lan, lets say in a range from

The eth4 interface is configured as slave to bridge br-ex.

root@flycatcher:~# ovs-vsctl show
    Bridge br-int
        Port int-br-ex
            Interface int-br-ex
        Port br-int
            Interface br-int
                type: internal
        Port "tap078b781f-16"
            tag: 1
            Interface "tap078b781f-16"
                type: internal
    Bridge br-ex
        Port "eth4"
            Interface "eth4"
        Port "qg-a5c6ddaf-b3"
            Interface "qg-a5c6ddaf-b3"
                type: internal
        Port br-ex
            Interface br-ex
                type: internal
        Port phy-br-ex
            Interface phy-br-ex
    ovs_version: "1.9.3"

root@flycatcher:~# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth4: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc mq master br-ex state UP group default qlen 1000
    link/ether 00:14:4f:83:b8:1a brd ff:ff:ff:ff:ff:ff
    inet6 fe80::214:4fff:fe83:b81a/64 scope link
       valid_lft forever preferred_lft forever
3: eth7: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:14:4f:9b:bb:c4 brd ff:ff:ff:ff:ff:ff
    inet brd scope global eth7
       valid_lft forever preferred_lft forever
    inet6 2001:6f8:900:85c3:214:4fff:fe9b:bbc4/64 scope global dynamic
       valid_lft 85867sec preferred_lft 13867sec
    inet6 fe80::214:4fff:fe9b:bbc4/64 scope link
       valid_lft forever preferred_lft forever
4: eth5: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 00:14:4f:83:b8:1b brd ff:ff:ff:ff:ff:ff
5: eth6: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 ...
edit retag flag offensive reopen merge delete

Closed for the following reason the question is answered, right answer was accepted by koolhead17
close date 2014-02-20 22:56:24.638234

3 answers

Sort by ยป oldest newest most voted

answered 2014-02-18 03:56:21 -0600

darragh-oreilly gravatar image

The network "performancenet" was created with router:external=True, which means it is for the L3-agent/floating IPs. But you want a flat net without floatingips. So delete this network and recreate it with router:external=False (the default) so it is an internal network. You don't need the L3-agent installed.

You can use nova console-log to see if the instance is getting an IP from DHCP.

edit flag offensive delete link more

answered 2014-02-19 07:09:38 -0600

Sadique Puthen gravatar image

As you found out using a provider external network is the best way to handle this. Create a network as flat network and add a subnet to it. Withing l3-agent.ini set empty value for external_network_bridge like "external_network_bridge =" This will allow you to instantiate instances directly to it.

It's better to let the ip assignment handled by Neutron dhcp server instead of the external dhcp server to avoid confusion between actual ip and the ip on instances and the ip noted by openstack.

edit flag offensive delete link more


Thank you for the tip! I have also figured out what went wrong with the dhcp: the default package installation on sid makes the /var/lib/neutron directory 750 and then the dnsmasq which is spawned as nobody cannot read the hosts file. Also the default br-ex bridge works in the setup below! Thanks!

miro gravatar imagemiro ( 2014-02-20 14:34:43 -0600 )edit

answered 2014-02-18 19:11:22 -0600

miro gravatar image


thank your for the tip with nova console-log that helped me investigate further the details. Actually I found an easier method for creating the set-up I looked for, I just created a flat network according to this guide (adapted for neutron instead of quantum): (

I created:

neutron net-create --provider:physical_network=physnet1 --provider:network_type=flat --shared perfnet
neutron subnet-create perfnet --name perf-subnet --no-gateway --host-route destination=,nexthop=  --allocation-pool start=,end=

and the instance was getting an IP address from this net and I was able to ping the host and ssh into it. The only thing missing is the dhcp setup on this net, but I'll figure that out also, eventually.

Thanks for your help!!


edit flag offensive delete link more

Get to know Ask OpenStack

Resources for moderators

Question Tools



Asked: 2014-02-17 16:53:38 -0600

Seen: 347 times

Last updated: Feb 19 '14