OVS: support multiple segments per host

Bug #1956435 reported by James Pic
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
neutron
Fix Released
Undecided
Sahid Orentino

Bug Description

Currently, we can't add more segments to a host because of this hardcoded limitation: https://github.com/openstack/neutron/blob/master/neutron/objects/subnet.py#L346-L355

However, simply removing this limitation allows to add more segments (which means more ips) to a single host with OVS.

Related: https://bugs.launchpad.net/neutron/+bug/1764738

Revision history for this message
Rodolfo Alonso (rodolfo-alonso-hernandez) wrote :

Hello James:

This is not OVS only related. This should be considered as a RFE.

Regards.

Revision history for this message
James Pic (jpic) wrote (last edit ):
Revision history for this message
James Pic (jpic) wrote :
tags: added: rfe
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (stable/xena)

Fix proposed to branch: stable/xena
Review: https://review.opendev.org/c/openstack/neutron/+/824718

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (master)

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/825517

Changed in neutron:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on neutron (stable/xena)

Change abandoned by "jpic <email address hidden>" on branch: stable/xena
Review: https://review.opendev.org/c/openstack/neutron/+/824718
Reason: Rebased on master in #825517

Revision history for this message
Slawek Kaplonski (slaweq) wrote : auto-abandon-script

This bug has had a related patch abandoned and has been automatically un-assigned due to inactivity. Please re-assign yourself if you are continuing work or adjust the state as appropriate if it is no longer valid.

Changed in neutron:
status: In Progress → New
tags: added: timeout-abandon
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on neutron (master)

Change abandoned by "Slawek Kaplonski <email address hidden>" on branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/825517
Reason: This review is > 4 weeks without comment, and failed Zuul jobs the last time it was checked. We are abandoning this for now. Feel free to reactivate the review by pressing the restore button and leaving a 'recheck' comment to get fresh test results.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (master)

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/839478

Changed in neutron:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/839479

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/840415

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/840416

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/840417

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/840418

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/840419

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/840420

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/840421

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/841459

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/841551

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/841838

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on neutron (master)

Change abandoned by "Sahid Orentino Ferdjaoui <email address hidden>" on branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/841551
Reason: dup, i removed the change id and create new one by mistake

Changed in neutron:
assignee: nobody → Sahid Orentino (sahid-ferdjaoui)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.opendev.org/c/openstack/neutron/+/839478
Committed: https://opendev.org/openstack/neutron/commit/1bfbc33ce0390ee180cba4ef691b6f584aa63e29
Submitter: "Zuul (22348)"
Branch: master

commit 1bfbc33ce0390ee180cba4ef691b6f584aa63e29
Author: Sahid Orentino Ferdjaoui <email address hidden>
Date: Mon Apr 25 11:31:03 2022 +0200

    ovs: handle segmentation ids per network ports

    This is changing the datastructure that maintains the relationship
    between ports and networks to also handle the segmenation ids related.

    This will be necessary in future to support multiple segments per
    networks on a same physical provider network.

    Partial-Bug: #1956435
    Partial-Bug: #1764738
    Signed-off-by: Sahid Orentino Ferdjaoui <email address hidden>
    Change-Id: Iaf40ddc20692a3a51a8d5f5acfc2094b2d5c00c4

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to neutron-specs (master)

Reviewed: https://review.opendev.org/c/openstack/neutron-specs/+/823823
Committed: https://opendev.org/openstack/neutron-specs/commit/e562468c6257b5a741d092f5de2b03d5d37689a6
Submitter: "Zuul (22348)"
Branch: master

commit e562468c6257b5a741d092f5de2b03d5d37689a6
Author: Sahid Orentino Ferdjaoui <email address hidden>
Date: Thu Mar 17 07:55:16 2022 +0100

    OVS: multiple routed provider segments per host

    The proposed spec is to extend the current feature routed provider
    networks to allow provisioning more than one segment per physical
    network.

    The support is for OVS only.

    Related-Bug: #1764738
    Related-Bug: #1956435

    Change-Id: I00e32b5b4fc6e4127ac3a56c7d34a1b828e6cb02
    Signed-off-by: Sahid Orentino Ferdjaoui <email address hidden>

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.opendev.org/c/openstack/neutron/+/839479
Committed: https://opendev.org/openstack/neutron/commit/6ec0bc70a7907ab2d83d1dfe0b177ddf17c79d61
Submitter: "Zuul (22348)"
Branch: master

commit 6ec0bc70a7907ab2d83d1dfe0b177ddf17c79d61
Author: Sahid Orentino Ferdjaoui <email address hidden>
Date: Wed Apr 27 09:03:55 2022 +0200

    ovs: make vlanmanager to handle more vlan mapping per network

    This change is updating the vlanmanager data structure to handle for a
    given network more than one vlan mapping. This is a prerequisite work
    needed to progress on accepting several segments per network per
    host.

    The work done here is trying to avoid changing logic in the
    current implementation. Unit test should not have value updated,
    but probably signatures changed.

    Partial-Bug: #1956435
    Partial-Bug: #1764738
    Signed-off-by: Sahid Orentino Ferdjaoui <email address hidden>
    Change-Id: Ic3c147136549b17aea0fe78e930a41a5b33ab9d8

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Reviewed: https://review.opendev.org/c/openstack/neutron/+/840415
Committed: https://opendev.org/openstack/neutron/commit/7a1e253851dfb9b46cf7734f5a58a5a859b7c984
Submitter: "Zuul (22348)"
Branch: master

commit 7a1e253851dfb9b46cf7734f5a58a5a859b7c984
Author: Sahid Orentino Ferdjaoui <email address hidden>
Date: Wed Apr 27 14:20:54 2022 +0200

    ovs: use a local vlan per network/segmentation

    This is using changes introduced before to support for a network more
    than one vlan.

    Partial-Bug: #1956435
    Partial-Bug: #1764738
    Signed-off-by: Sahid Orentino Ferdjaoui <email address hidden>
    Change-Id: Ifd61e379c3cef3589803c96a276da9827051f660

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Reviewed: https://review.opendev.org/c/openstack/neutron/+/840416
Committed: https://opendev.org/openstack/neutron/commit/7ceb935da82ee5dbc1960b83d08d4287ce663bf0
Submitter: "Zuul (22348)"
Branch: master

commit 7ceb935da82ee5dbc1960b83d08d4287ce663bf0
Author: Sahid Orentino Ferdjaoui <email address hidden>
Date: Wed Apr 27 18:02:33 2022 +0200

    dhcp/rpc: retrieve network details with segments

    When segment plugin is enabled, we should return segments details as
    they are part of network.

    Partial-Bug: #1956435
    Partial-Bug: #1764738
    Signed-off-by: Sahid Orentino Ferdjaoui <email address hidden>
    Change-Id: I1dab155bc812f8764d22e78ebb7d80aaaad65515

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Reviewed: https://review.opendev.org/c/openstack/neutron/+/840417
Committed: https://opendev.org/openstack/neutron/commit/81853192480c4d011e452cccbe8a15f56a48689d
Submitter: "Zuul (22348)"
Branch: master

commit 81853192480c4d011e452cccbe8a15f56a48689d
Author: Sahid Orentino Ferdjaoui <email address hidden>
Date: Thu Apr 28 11:30:55 2022 +0200

    utils: add option to generate dhcp device id per segmentation

    This will be used in future when dhcp will handle different
    segmentation ids.

    Partial-Bug: #1956435
    Partial-Bug: #1764738
    Signed-off-by: Sahid Orentino Ferdjaoui <email address hidden>
    Change-Id: Ie005285ed667041732950a6aa226b8151d608afe

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Reviewed: https://review.opendev.org/c/openstack/neutron/+/840418
Committed: https://opendev.org/openstack/neutron/commit/6db791ac0fde866a61d8cfbf9679dbd02d327635
Submitter: "Zuul (22348)"
Branch: master

commit 6db791ac0fde866a61d8cfbf9679dbd02d327635
Author: Sahid Orentino Ferdjaoui <email address hidden>
Date: Thu Apr 28 16:12:24 2022 +0200

    ml2/mech: bind port on segment that subnet belongs

    If subnet is attached to a segment we want to endure that the bind
    will happen on it.

    Partial-Bug: #1956435
    Partial-Bug: #1764738
    Signed-off-by: Sahid Orentino Ferdjaoui <email address hidden>
    Change-Id: I56b22820d29b2d57faf28a2f9b685ab0b2c924b4

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to neutron-fwaas (master)

Related fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron-fwaas/+/855891

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to neutron-fwaas (master)

Reviewed: https://review.opendev.org/c/openstack/neutron-fwaas/+/855891
Committed: https://opendev.org/openstack/neutron-fwaas/commit/553e6b64110d573a08a5470c00dfa282ac72b0b9
Submitter: "Zuul (22348)"
Branch: master

commit 553e6b64110d573a08a5470c00dfa282ac72b0b9
Author: elajkat <email address hidden>
Date: Mon Sep 5 15:40:53 2022 +0200

    Adopt to latest VlanManager and oslo.db changes

    The work for making routed networks work with multiple segments per
    host, introduced new signature for VlanManager.get, requesting
    segmentation_id, make neutron-fwaas code compatible with it.

    With oslo.db 12.1.0 some unit tests started to fail, with using the
    CONTEXT_R/W session we can fix it.

    Adopt dsvm-functional target name as [0] changed in Neutron, so the new
    name of the target is dsvm-functional-gate.

    [0]: https://review.opendev.org/c/openstack/neutron/+/856262

    Change-Id: Ie7459974f6f2358c8d9c37e66aa9cda530ecefc0
    Related-Bug: #1956435
    Related-Bug: #1764738

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.opendev.org/c/openstack/neutron/+/840419
Committed: https://opendev.org/openstack/neutron/commit/1d8e3b79dbe9dac3804c06e9182b633fc902d766
Submitter: "Zuul (22348)"
Branch: master

commit 1d8e3b79dbe9dac3804c06e9182b633fc902d766
Author: Sahid Orentino Ferdjaoui <email address hidden>
Date: Fri Apr 29 12:02:45 2022 +0200

    dhcp: make device manager to clean only not used devices

    This change makes device manager action to clean device a bit smarter
    by comparing port registered for a given network with device in live.

    Partial-Bug: #1956435
    Partial-Bug: #1764738
    Signed-off-by: Sahid Orentino Ferdjaoui <email address hidden>
    Change-Id: I0b6f9b59b94cf05996e4217b5d232b69ad775502

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Reviewed: https://review.opendev.org/c/openstack/neutron/+/840420
Committed: https://opendev.org/openstack/neutron/commit/cb332acb29ec0bc836637098b42ab8692369c6ac
Submitter: "Zuul (22348)"
Branch: master

commit cb332acb29ec0bc836637098b42ab8692369c6ac
Author: Sahid Orentino Ferdjaoui <email address hidden>
Date: Fri Apr 29 17:28:03 2022 +0200

    dhcp: add/use cleanup stale devices API

    This is adding new API for the dhcp driver to clean stale
    devices. Previously it was not necessary since a dhcp port was related
    to a nemaspace and when the namespace got deleted, the device was also
    removed.

    Now with multisegments we can have more than one dhcp port per
    namespace based on segmenation id so we should ensure to remove the
    stale device.

    Partial-Bug: #1956435
    Partial-Bug: #1764738
    Signed-off-by: Sahid Orentino Ferdjaoui <email address hidden>
    Change-Id: I4a46b034a5feabb914bc6fd121d68e20278230b5

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (master)

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/861177

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.opendev.org/c/openstack/neutron/+/861177
Committed: https://opendev.org/openstack/neutron/commit/7c1a894ce5c27a40f527c1a7c5f2d02723de93d8
Submitter: "Zuul (22348)"
Branch: master

commit 7c1a894ce5c27a40f527c1a7c5f2d02723de93d8
Author: elajkat <email address hidden>
Date: Thu Oct 13 14:30:17 2022 +0200

    Nit: network_update in ovs_neutron_agent has a bad LOG

    The log entry had %(tag)s but the dict has 'segmentation_id' as key,
    so let's change tag to segmentation_id.

    Change-Id: Ic6e82a31efe7798c9ec0c5e6bc743db4c280fd1a
    Partial-Bug: #1956435
    Partial-Bug: #1764738

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Reviewed: https://review.opendev.org/c/openstack/neutron/+/840421
Committed: https://opendev.org/openstack/neutron/commit/d1c2d2c4fee0844f1081ff501a43939cc988c943
Submitter: "Zuul (22348)"
Branch: master

commit d1c2d2c4fee0844f1081ff501a43939cc988c943
Author: Sahid Orentino Ferdjaoui <email address hidden>
Date: Mon May 2 16:33:47 2022 +0200

    dhcp: support multiple segmentations per network

    This change makes the DHPC agent to handle multiple segmentation per
    network.

    For each segmentation a DHCP Process will be started, this has the
    benefit to keep the current logic of building a DHCP service per
    network domain.

    Partial-Bug: #1956435
    Partial-Bug: #1764738
    Signed-off-by: Sahid Orentino Ferdjaoui <email address hidden>
    Change-Id: I88264ce2303cbaed983d437203232bd1459d58b2

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (master)

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/864446

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on neutron (master)

Change abandoned by "Sahid Orentino Ferdjaoui <email address hidden>" on branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/864446

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.opendev.org/c/openstack/neutron/+/841459
Committed: https://opendev.org/openstack/neutron/commit/eeff5b3c81ae7846a77c65edaafe58332090a621
Submitter: "Zuul (22348)"
Branch: master

commit eeff5b3c81ae7846a77c65edaafe58332090a621
Author: Sahid Orentino Ferdjaoui <email address hidden>
Date: Fri Aug 5 08:56:27 2022 +0200

    db: add segment_index to the unique constraint

    For multi segments support we have update the unique contraint so
    `segment_index` will be part of it.

    Related-Bug: #1791233
    Partial-Bug: #1956435
    Partial-Bug: #1764738
    Signed-off-by: Sahid Orentino Ferdjaoui <email address hidden>
    Change-Id: Ic564131dcd7525fc5f24c3282688e3584cd2e2e0

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Reviewed: https://review.opendev.org/c/openstack/neutron/+/841838
Committed: https://opendev.org/openstack/neutron/commit/be0996c30850a870f05cabc3f8b77a379e7ab9da
Submitter: "Zuul (22348)"
Branch: master

commit be0996c30850a870f05cabc3f8b77a379e7ab9da
Author: Sahid Orentino Ferdjaoui <email address hidden>
Date: Mon Nov 14 21:58:13 2022 +0100

    segment: enable multisegments support for host

    This updates the exception with a log message informing that
    multi-segments is supported by OVS only at that point.

    This also add fullstack tests that validates multisegs deployment on a
    physnet.

    Closes-Bug: #1956435
    Partial-Bug: #1764738
    Signed-off-by: Sahid Orentino Ferdjaoui <email address hidden>
    Change-Id: I3811a4ca28906dd29100c602de7fa4a3595393ab

Changed in neutron:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to neutron (master)

Related fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/874057

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to neutron (master)

Reviewed: https://review.opendev.org/c/openstack/neutron/+/874057
Committed: https://opendev.org/openstack/neutron/commit/e9ce025a69dd00dde8efe17a45fb2bc46b145057
Submitter: "Zuul (22348)"
Branch: master

commit e9ce025a69dd00dde8efe17a45fb2bc46b145057
Author: yatinkarel <email address hidden>
Date: Thu Feb 16 12:54:22 2023 +0530

    [dhcp agent] Fix clean_devices

    Exception[1] is seen in periodic_resync of
    dhcp, this patch fixes it.

    [1] TypeError: DhcpLocalProcess.clean_devices() missing 1 \
    required positional argument: 'network'

    Related-Bug: #1764738
    Related-Bug: #1956435
    Change-Id: Ie265b864718d9eaaea2f688649fcff24e47520b6

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/neutron 22.0.0.0rc1

This issue was fixed in the openstack/neutron 22.0.0.0rc1 release candidate.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.