[openstack-dev] l2gw

Ricardo Noriega De Soto rnoriega at redhat.com
Tue Oct 10 13:14:02 UTC 2017


I've been taking a look at the implementation and thinking about which
cases update should be allowed.

At a first glance, I would say that we should allow updates:


   - Add a new interface (neutron l2-gateway-update gw1 --device
   name=hwvtep,interface_names=eth0,*eth1*) being eth1 the new interface.
   - Delete interface (neutron l2-gateway-update gw1 --device
   name=hwvtep,interface_names=eth0) removing eth1. In this case, we should
   check that the port has not any active connection.

However, in both cases there is a big issue, which is the granularity of
the segmentation-ids per port, right?? You cannot add or remove an l2gw
connection per port, which bring us to a dead end.

Let's say I add eth1 to an existing l2gw. How can I get a vlan tag to that
interface?? There is not l2gw-connection-update command... and trying to
create the same one will fail. Even if you try to update the l2gw instance
specifying the seg-id per port, it won't be active until a new connection
is created.

Folks, based on your experience, what's your take on this??

IMHO, there is no easy way of solving this but with a big re-architecture.

On Fri, Sep 29, 2017 at 1:46 PM, Lajos Katona <lajos.katona at ericsson.com>
wrote:

> Hi Ricardo,
>
> That is the exception which gives us the trouble.
>
> If you have ideas as you mentioned in which case a gw should be updated,
> and in what not, that would be really nice.
> Actually now we have a kind of development environment with devstack and
> vtep emulator (http://docs.openvswitch.org/en/latest/howto/vtep/) on the
> same host, what do you think is that enough to go on with this problem?
> I am not so sure if with vtep emulator we can cover all the good and bad
> (I mean when we mustn't do the update for example) scenarios.
>
> Regards
> Lajos
>
>
> On 2017-09-28 14:12, Ricardo Noriega De Soto wrote:
>
> I see the exception now Lajos:
>
> class L2GatewayInUse(exceptions.InUse):
>     message = _("L2 Gateway '%(gateway_id)s' still has active mappings "
>                 "with one or more neutron networks.")
>
> :-)
>
> On Wed, Sep 27, 2017 at 6:40 PM, Ricardo Noriega De Soto <
> rnoriega at redhat.com> wrote:
>
>> Hey Lajos,
>>
>> Is this the exception you are encountering?
>>
>> (neutron) l2-gateway-update --device name=hwvtep,interface_names=eth0,eth1
>> gw1
>> L2 Gateway 'b8ef7f98-e901-4ef5-b159-df53364ca996' still has active
>> mappings with one or more neutron networks.
>> Neutron server returns request_ids: ['req-f231dc53-cb7d-4221-ab74-
>> fa8715f85869']
>>
>> I don't see the L2GatewayInUse exception you're talking about, but I
>> guess it's the same situation.
>>
>> We should discuss in which case the l2gw instance could be updated, and
>> in which cases it shouldn't.
>>
>> Please, let me know!
>>
>>
>>
>> On Wed, Aug 16, 2017 at 11:14 AM, Lajos Katona <lajos.katona at ericsson.com
>> > wrote:
>>
>>> Hi,
>>>
>>> We faced an issue with l2-gw-update, which means that actually if there
>>> are connections for a gw the update will throw an exception
>>> (L2GatewayInUse), and the update is only possible after deleting first the
>>> connections, do the update and add the connections back.
>>>
>>> It is not exactly clear why this restriction is there in the code (at
>>> least I can't find it in docs or comments in the code, or review).
>>> As I see the check for network connections was introduced in this patch:
>>> https://review.openstack.org/#/c/144097 (https://review.openstack.org/
>>> #/c/144097/21..22/networking_l2gw/db/l2gateway/l2gateway_db.py)
>>>
>>> Could you please give me a little background why the update operation is
>>> not allowed on an l2gw with network connections?
>>>
>>> Thanks in advance for the help.
>>>
>>> Regards
>>> Lajos
>>>
>>> ____________________________________________________________
>>> ______________
>>> OpenStack Development Mailing List (not for usage questions)
>>> Unsubscribe: OpenStack-dev-request at lists.op
>>> enstack.org?subject:unsubscribe
>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>>>
>>
>>
>>
>> --
>> Ricardo Noriega
>>
>> Senior Software Engineer - NFV Partner Engineer | Office of Technology
>>  | Red Hat
>> irc: rnoriega @freenode
>>
>>
>
>
> --
> Ricardo Noriega
>
> Senior Software Engineer - NFV Partner Engineer | Office of Technology  |
> Red Hat
> irc: rnoriega @freenode
>
>
>
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribehttp://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
>
>
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
>


-- 
Ricardo Noriega

Senior Software Engineer - NFV Partner Engineer | Office of Technology  |
Red Hat
irc: rnoriega @freenode
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20171010/7a71dc0f/attachment.html>


More information about the OpenStack-dev mailing list