<div dir="ltr"><div dir="ltr"><div>Here is a gist of what I did (which again could be completely the wrong way to proceed).</div><div><br>
<div>Basically, you create a port for your network and then run the script to emit the configuration commands you need to run *examine the output before running it please*<br></div>

</div><div><br></div><div> Feel free to re-use or better yet, please come up with a way to do the equivalent thing using just openstack command line (without scripts) and share it.<br></div><div><br></div><div><br></div><div><br></div><div><a href="https://gist.github.com/ranganathanm/6fcd94ad0d568d00156cff08b055c4b0">https://gist.github.com/ranganathanm/6fcd94ad0d568d00156cff08b055c4b0</a></div><div><br></div><div>Hope this helps</div><div><br></div></div></div><br><div class="gmail_quote"><div dir="ltr">On Fri, Dec 7, 2018 at 9:58 AM Paul Bourke <<a href="mailto:paul.bourke@oracle.com">paul.bourke@oracle.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Ok, so in my case, I've booted a test cirros VM on lb-mgmt-net, it gets <br>
assigned an IP of 172.18.2.126. The goal is to be able to ping this IP <br>
directly from the control plane.<br>
<br>
I create a port in neutron: <a href="http://paste.openstack.org/show/736821/" rel="noreferrer" target="_blank">http://paste.openstack.org/show/736821/</a><br>
<br>
I log onto the network node that's hosting the dhcp namespace for this <br>
node: <a href="http://paste.openstack.org/show/736823/" rel="noreferrer" target="_blank">http://paste.openstack.org/show/736823/</a><br>
<br>
I then run the following command lifted from devstack, with my port info <br>
subbed in:<br>
<br>
# ovs-vsctl -- --may-exist add-port ${OVS_BRIDGE:-br-int} o-hm0 -- set <br>
Interface o-hm0 type=internal -- set Interface o-hm0 <br>
external-ids:iface-status=active -- set Interface o-hm0 <br>
external-ids:attached-mac=$MGMT_PORT_MAC -- set Interface o-hm0 <br>
external-ids:iface-id=$MGMT_PORT_ID -- set Interface o-hm0 <br>
external-ids:skip_cleanup=true<br>
<br>
Here's the output of 'ovs-vsctl show' at this point: <br>
<a href="http://paste.openstack.org/show/736826/" rel="noreferrer" target="_blank">http://paste.openstack.org/show/736826/</a><br>
<br>
Note that the tap device for the VM (tap6440048f-d2) has tag 3. However, <br>
if I try to add 'tag=3' to the above add-port command it just assigns <br>
the port the dead tag 4095.<br>
<br>
So at the point I have a new interface created, o-hm0, with a status of <br>
DOWN. It's on br-int, but I can't ping the instance at 172.18.2.126. I <br>
also assume I need to add a static route of some form on the node, <br>
though no attempts so far have resulted in being able to ping.<br>
<br>
Would be very grateful if you could revise these commands and let know <br>
if they deviate from what you're doing.<br>
<br>
-Paul<br>
<br>
On 06/12/2018 21:12, M. Ranganathan wrote:<br>
> HACK ALERT Disclaimer: My suggestion could be clumsy.<br>
> <br>
> On Thu, Dec 6, 2018 at 1:46 PM Paul Bourke <<a href="mailto:paul.bourke@oracle.com" target="_blank">paul.bourke@oracle.com</a> <br>
> <mailto:<a href="mailto:paul.bourke@oracle.com" target="_blank">paul.bourke@oracle.com</a>>> wrote:<br>
> <br>
>     Hi,<br>
> <br>
>     This is mostly a follow on to the thread at[0], though due to the<br>
>     mailing list transition it was easier to start a new thread.<br>
> <br>
>     I've been attempting to get Octavia setup according to the<br>
>     dev-quick-start guide[1], but have been struggling with the<br>
>     following piece:<br>
> <br>
>     "Add appropriate routing to / from the ‘lb-mgmt-net’ such that<br>
>     egress is allowed, and the controller (to be created later) can talk<br>
>     to hosts on this network."<br>
> <br>
>     In mranga's reply, they say:<br>
> <br>
>      > -- Create an ovs port  on br-int<br>
>      > -- Create a neutron port using the ovs port that you just created.<br>
>      > -- Assign the ip address of the neutron port to the ovs port<br>
>      > -- Use ip netns exec to assign a route in the router namespace of<br>
>     the LoadBalancer network.<br>
> <br>
>     I have enough of an understanding of Neutron/OVS for this to mostly<br>
>     make sense, but not enough to actually put it into practice it<br>
>     seems. My environment:<br>
> <br>
>     3 x control nodes<br>
>     2 x network nodes<br>
>     1 x compute<br>
> <br>
>     All nodes have two interfaces, eth0 being the management network -<br>
>     <a href="http://192.168.5.0/24" rel="noreferrer" target="_blank">192.168.5.0/24</a> <<a href="http://192.168.5.0/24" rel="noreferrer" target="_blank">http://192.168.5.0/24</a>>, and eth1 being used for the<br>
>     provider network. I then create the Octavia lb-mgmt-net on<br>
>     <a href="http://172.18.2.0/24" rel="noreferrer" target="_blank">172.18.2.0/24</a> <<a href="http://172.18.2.0/24" rel="noreferrer" target="_blank">http://172.18.2.0/24</a>>.<br>
> <br>
>     I've read the devstack script[2] and have the following questions:<br>
> <br>
>     * Should I add the OVS port to br-int on the compute, network nodes,<br>
>     or both?<br>
> <br>
> <br>
> I have only one controller which also functions as my network node. I <br>
> added the port on the controller/network  node. br-int is the place <br>
> where the integration happens. You will find each network has an <br>
> internal vlan tag associated with it. Use the tag assigned to your lb <br>
> network when you create the ovs port.<br>
> <br>
> ovs-vsctl show will tell you more.<br>
> <br>
> <br>
>     * What is the purpose of creating a neutron port in this scenario<br>
> <br>
> <br>
> Just want to be sure Neutron knows about it and has an entry in its <br>
> database so the address won't be used for something else. If you are <br>
> using static addresses, for example you should not need this (I think).<br>
> <br>
> BTW the created port is DOWN. I am not sure why and I am not sure it <br>
> matters.<br>
> <br>
> <br>
>     If anyone is able to explain this a bit further or can even point to<br>
>     some good material to flesh out the underlying concepts it would be<br>
>     much appreciated, I feel the 'Neutron 101' videos I've done so far<br>
>     are not quite getting me there :)<br>
> <br>
>     Cheers,<br>
>     -Paul<br>
> <br>
>     [0]<br>
>     <a href="http://lists.openstack.org/pipermail/openstack-discuss/2018-December/000544.html" rel="noreferrer" target="_blank">http://lists.openstack.org/pipermail/openstack-discuss/2018-December/000544.html</a><br>
>     [1]<br>
>     <a href="https://docs.openstack.org/octavia/latest/contributor/guides/dev-quick-start.html" rel="noreferrer" target="_blank">https://docs.openstack.org/octavia/latest/contributor/guides/dev-quick-start.html</a><br>
>     [2] <a href="https://github.com/openstack/octavia/blob/master/devstack/plugin.sh" rel="noreferrer" target="_blank">https://github.com/openstack/octavia/blob/master/devstack/plugin.sh</a><br>
> <br>
> <br>
> <br>
> -- <br>
> M. Ranganathan<br>
> <br>
</blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>M. Ranganathan <br><br></div></div></div></div></div></div></div></div></div></div></div>