<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Title" content="">
<meta name="Keywords" content="">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman";}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:Calibri;
        color:windowtext;}
span.msoIns
        {mso-style-type:export-only;
        mso-style-name:"";
        text-decoration:underline;
        color:teal;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style>
</head>
<body bgcolor="white" lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">I don’t have the exact steps offhand, but you should be able to create a veth pair manually, attach one end to your existing bridge, and specify the other end in the bridge_mappings section.
 Make sure you set both ends up using ‘ip link set <dev> up’ prior to this. The veth pair will end up linking the bridges together.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">Nova/Neutron should still handle putting the tap interface of the instance in the bridge, even if bridge_mappings is wrong or not working. The port’s device owner is compute:nova, which
 likely explains the message you saw in the log.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">Hope that helps!
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">James <o:p>
</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><o:p> </o:p></span></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-family:Calibri;color:black">From: </span>
</b><span style="font-family:Calibri;color:black">Paul Dekkers <paul.dekkers@surfnet.nl><br>
<b>Date: </b>Tuesday, August 16, 2016 at 12:18 PM<br>
<b>To: </b>George Paraskevas <paraskgeor@gmail.com>, openstack-operators <openstack-operators@lists.openstack.org><br>
<b>Subject: </b>Re: [Openstack-operators] neutron flat network on existing bridge fails<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal">Hi,<br>
<br>
Thanks for your suggestion - I don't think that's it, because that gives me:<br>
<br>
Unable to add br224 to brqf709c220-fd! Exception: Exit code: 1; Stdin: ; Stdout: ; Stderr: device br224 is a bridge device itself; can't enslave a bridge device to a bridge device.<br>
<br>
and<br>
<br>
Skip adding device tapf99013c6-6b to brqf709c220-fd. It is owned by compute:nova and thus added elsewhere. _add_tap_interface /usr/lib/python2.7/dist-packages/neutron/plugins/ml2/drivers/linuxbridge/agent/linuxbridge_neutron_agent.py:473<br>
<br>
while this tapf99013c6-6b now actually is enslaved to brqf709c220-fd, even with the wrong physical_interface_mappings setting. So I guess it's ignored because of the error, or some other code built that bridge (nova? as it's owned by compute:nova ? I had no
 idea a bridge/interface could have an owner...)<br>
<br>
Regards,<br>
Paul<br>
<br>
<br>
On 16-08-16 17:39, George Paraskevas wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p>Hello,<br>
With Linux bridge, I believe you should use physical _interface_mappings =provider:br224<br>
Beat regards<br>
George<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Tue, 16 Aug 2016, 16:48 Paul Dekkers, <<a href="mailto:paul.dekkers@surfnet.nl">paul.dekkers@surfnet.nl</a>> wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<p class="MsoNormal">Hi,<br>
<br>
I'm using Ubuntu 16.04.1 with it's Mitaka release, and neutron flat<br>
networking with linuxbridge+ml2:<br>
<br>
I'd like to attach my flat neutron network to an existing linuxbridge on<br>
my system. This fails with an error like:<br>
<br>
2016-08-16 15:07:00.711 7982 DEBUG<br>
neutron.plugins.ml2.drivers.linuxbridge.agent.linuxbridge_neutron_agent<br>
[req-720266dc-fe8d-47c4-a7df-19fee7a8d679 - - - - -] Skip adding device<br>
tapf99013c6-6b to br224. It is owned by compute:nova and thus added<br>
elsewhere. _add_tap_interface<br>
/usr/lib/python2.7/dist-packages/neutron/plugins/ml2/drivers/linuxbridge/agent/linuxbridge_neutron_agent.py:473<br>
<br>
with the result that the tap interface is added to a newly created<br>
bridge instead of the existing (br224) bridge.<br>
<br>
I've set<br>
bridge_mappings = provider:br224<br>
in /etc/neutron/plugins/ml2/linuxbridge_agent.ini<br>
<br>
(because if I use<br>
physical_interface_mappings = provider:vlan224<br>
the vlan224 interface is actually detached from the original bridge)<br>
<br>
I've created the bridge via /etc/network/interfaces:<br>
<br>
auto br224<br>
iface br224 inet manual<br>
        bridge_ports vlan224<br>
<br>
auto vlan224<br>
iface vlan224 inet manual<br>
        vlan_raw_device eno1<br>
<br>
Reason for doing this is that I'd like to attach an lxc container to<br>
this bridge (and only when neutron needs it the "brqf709c220-fd" (with<br>
for me an unpredictable name) is setup, so I can't use that), and/or<br>
like to have the machine itself use an interface on this network. (This<br>
is also my reason for using flat networking, and not vlan.)<br>
<br>
I've created the neutron networks with<br>
<br>
neutron net-create default --shared --provider:physical_network provider<br>
--provider:network_type flat<br>
<br>
(I would repeat this with a different physical_network name if I need<br>
more VLANs, instead of using the --provider:segmentation_id.)<br>
<br>
Instance networking works when I let nova/neutron create the bridge<br>
interfaces.<br>
<br>
Any idea why neutron refuses to use the bridge_mappings and why it<br>
creates a new interface?<br>
<br>
Regards,<br>
Paul<br>
<br>
P.S. To me it feels like this is what people would need when setting up<br>
a small single-network setup (both for instances and OpenStack), but<br>
most examples use multiple networks anyway.<br>
<br>
_______________________________________________<br>
OpenStack-operators mailing list<br>
<a href="mailto:OpenStack-operators@lists.openstack.org" target="_blank">OpenStack-operators@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators</a><o:p></o:p></p>
</blockquote>
</div>
</blockquote>
<p><o:p> </o:p></p>
</div>
</div>
</div>
</body>
</html>