[openstack-dev] [devstack] [neutron] A larger batch of questions about configuring DevStack to use Neutron
Sean M. Collins
sean at coreitpro.com
Mon Oct 12 15:29:43 UTC 2015
On Thu, Oct 08, 2015 at 01:47:31PM EDT, Mike Spreitzer wrote:
> ..
> > > In the section
> > > http://docs.openstack.org/developer/devstack/guides/
> > neutron.html#using-neutron-with-a-single-interface
> > > there is a helpful display of localrc contents. It says, among other
> > > things,
> > >
> > > OVS_PHYSICAL_BRIDGE=br-ex
> > > PUBLIC_BRIDGE=br-ex
> > >
> > > In the next top-level section,
> > > http://docs.openstack.org/developer/devstack/guides/
> > neutron.html#using-neutron-with-multiple-interfaces
> > > , there is no display of revised localrc contents and no mention of
> > > changing either bridge setting. That is an oversight, right?
> >
> > No, this is deliberate. Each section is meant to be independent, since
> > each networking configuration and corresponding DevStack configuration
> > is different. Of course, this may need to be explicitly stated in the
> > guide, so there is always room for improvement.
>
> I am not quite sure I understand your answer. Is the intent that I can
> read only one section, ignore all the others, and that will tell me how to
> use DevStack to produce that section's configuration? If so then it would
> be good if each section had a display of all the necessary localrc
> contents.
Agreed. This is a failure on my part, because I was pasting in only
parts of my localrc (since it came out of a live lab environment). I've
started pushing patches to correct this.
> I have started over, from exactly the picture drawn at the start of the
> doc. That has produced a configuration that mostly works. However, I
> tried creating a VM connected to the public network, and that failed for
> lack of a Neutron DHCP server there.
The public network is used for floating IPs. The L3 agent creates NAT
rules to intercept traffic on the public network and NAT it back to a
guest instance that has the floating IP allocated to it.
The behavior for when a guest is directly attached to the public
network, I sort of forget what happens exactly but I do know that it
doesn't work from experience - most likely because the network is not
configured as a flat network. It will not receive a DHCP lease from the
external router.
> I am going to work out how to change
> that, and am willing to contribute an update to this doc. Would you want
> that in this section --- in which case this section needs to specify that
> the provider DOES NOT already have DHCP service on the hardware network
> --- or as a new section?
No, I think we should maybe have a warning or something that the
external network will be used for Floating IPs, and that guest instances
should not be directly attached to that network.
> > >
> > > Looking at
> > > http://docs.openstack.org/networking-guide/scenario_legacy_ovs.html(or
> , in
> > > former days, the doc now preserved at
> > > http://docs.ocselected.org/openstack-manuals/kilo/networking-
> > guide/content/under_the_hood_openvswitch.html
> > > ) I see the name br-ex used for $PUBLIC_BRIDGE--- not
> $OVS_PHYSICAL_BRIDGE
> > > , right? Wouldn't it be less confusing if
> > > http://docs.openstack.org/developer/devstack/guides/neutron.htmlused a
>
> > > name other than "br-ex" for the exhibited commands that apply to
> > > $OVS_PHYSICAL_BRIDGE?
> >
> > No, this is deliberate - br-ex is the bridge that is used for external
> > network traffic - such as floating IPs and public IP address ranges. On
> > the network node, a physical interface is attached to br-ex so that
> > traffic will flow.
> >
> > PUBLIC_BRIDGE is a carryover from DevStack's Nova-Network support and is
> > used in some places, with OVS_PHYSICAL_BRIDGE being used by DevStack's
> > Neutron support, for the Open vSwitch driver specifically. They are two
> > variables that for the most part serve the same purpose. Frankly,
> > DevStack has a lot of problems with configuration knobs, and
> > PUBLIC_BRIDGE and OVS_PHYSICAL_BRIDGE is just a symptom.
>
> Ah, thanks, that helps. But I am still confused. When using Neutron with
> two interfaces, there will be a bridge for each.
There shouldn't be. I'm pushing patches in the multiple interface
section that includes output from the ovs-vsctl commands, hopefully
it'll clarify things.
> I have learned that
> DevStack will automatically create one bridge, and seen that it is named
> "br-ex" when following the instructions in the single-interface section.
> Now in the multiple-interface section I see that I should create a bridge
> named "br-ex" before invoking DevStack.
It should still create the bridge br-ex automatically. Depending on your
configuration, DevStack should also attach the interface to the bridge
automatically.
> I suppose DevStack will create
> the other bridge needed, but suspect I am missing a clue about what to
> tell DevStack so that it makes a bridge with the right name and connected
> to the right interface.
I don't believe a second bridge is required.
> Good. I was afraid somebody would tell me there is no point in using OVS
> in a single-node setup. I will revisit this after settling the issues
> above.
Eventually I'll get around to writing a LinuxBridge guide. Maybe after
Tokyo.
Take a look at some of the patches I'm pushing, I do agree that the
Neutron guide for DevStack got a little disjointed recently, and wasn't
as clear as it needs to be. This is my fault, and I need to fix.
Hopefully the patches that I'm pushing now will help. Please review!
https://review.openstack.org/#/c/233674
https://review.openstack.org/#/c/233666/
--
Sean M. Collins
More information about the OpenStack-dev
mailing list