[RFE] Strict minimum bandwidth support (egress)

Bug #1578989 reported by Miguel Angel Ajo
28
This bug affects 4 people
Affects Status Importance Assigned to Milestone
neutron
Fix Released
Wishlist
Bence Romsics

Bug Description

This RFE is a follow up of [1] and it's registered only for completion to provide visibility on the high level plan. - we cannot tackle this until [1] and [2] are in place. -

Minimum bandwidth support (opposed to bandwidth limiting), guarantees a port minimum bandwidth when it's neighbours are consuming egress traffic and can be throttled in favor of the guaranteed port.

Strict minimum bandwidth support requires scheduling cooperation, to avoid physical interfaces overcommit. This RFE assumes that the hypervisor side of it is handled as per [1]

Use cases
========

NFV/telcos are interested in this type of rules to make sure functions don't overcommit computes, and that any spawn of the same architecture will perform exactly as expected.

CSP could make use of it to provide guaranteed bandwidth for streaming, etc...

Notes
=====

This depends on the nova generic resource pool framework to be available [2], an specific resource (attached to compute nodes NIC_BW) being declared by neutron (as per discovery or admin setting on each host)

Also, a mechanism for nova scheduler to be able to understand the amount of resources consumed from a port will be necessary. Either as a detail that is provided in the port when nova is calling neutron for port creation/get, or as a separate call [3].

Nova dependencies
=================

Custom resource classes:
   Spec: https://review.openstack.org/#/c/312696/
   Code: https://review.openstack.org/#/q/topic:bp/custom-resource-classes

Nested resource providers:

   Spec: https://review.openstack.org/#/c/386710/
   Code: https://review.openstack.org/#/q/topic:bp/nested-resource-providers

  for example:
   NIC_BW_EGRESS.<physnet>
   NIC_BW_INGRESS.<physnet>

[1] https://bugs.launchpad.net/neutron/+bug/1560963
[2] http://lists.openstack.org/pipermail/openstack-dev/2016-February/086371.html
[3] http://lists.openstack.org/pipermail/openstack-dev/2016-April/091928.html

tags: added: qos rfe
Ryan Moats (rmoats)
Changed in neutron:
importance: Undecided → Wishlist
Assaf Muller (amuller)
Changed in neutron:
status: New → Confirmed
tags: added: rfe-postponed
tags: removed: rfe
Revision history for this message
Miguel Angel Ajo (mangelajo) wrote :

I'm assuming here I can toggle it, even this is going to be a long term effort, and we need to start by a spec to make some design decisions.

tags: added: rfe-approved
removed: rfe-postponed
Revision history for this message
Miguel Angel Ajo (mangelajo) wrote :

We may want to create a blueprint and spec for this to go into the detail, since this is a multi-cycle, nova-integration effort and we need to put several bricks in place to build it.

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

Related fix proposed to branch: master
Review: https://review.openstack.org/396297

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.openstack.org/402121

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

Related fix proposed to branch: master
Review: https://review.openstack.org/404343

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

Fix proposed to branch: master
Review: https://review.openstack.org/404647

Changed in neutron:
assignee: nobody → Rodolfo Alonso (rodolfo-alonso-hernandez)
status: Confirmed → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on neutron (master)

Change abandoned by Rodolfo Alonso Hernandez (<email address hidden>) on branch: master
Review: https://review.openstack.org/404647
Reason: Merged in https://review.openstack.org/#/c/401254/

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

Change abandoned by Armando Migliaccio (<email address hidden>) on branch: master
Review: https://review.openstack.org/404343
Reason: This review is > 4 weeks without comment, and failed Jenkins 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 :

Change abandoned by Kevin Benton (<email address hidden>) on branch: master
Review: https://review.openstack.org/404343
Reason: This review is > 4 weeks without comment, and failed Jenkins 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 :

Change abandoned by Kevin Benton (<email address hidden>) on branch: master
Review: https://review.openstack.org/402121
Reason: This review is > 4 weeks without comment, and failed Jenkins 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 : Related fix merged to neutron-specs (master)

Reviewed: https://review.openstack.org/396297
Committed: https://git.openstack.org/cgit/openstack/neutron-specs/commit/?id=28c17a56437cfa7e6c792160334406e6464d76e1
Submitter: Jenkins
Branch: master

commit 28c17a56437cfa7e6c792160334406e6464d76e1
Author: Miguel Angel Ajo <email address hidden>
Date: Thu Nov 10 16:20:04 2016 +0100

    Add a spec for strict minimum bandwidth support

    Integration to the nova placement API will allow us to
    provide guaranteed minimum bandwidth for ports.

    Change-Id: Iecdf70f3090910a4faabf077627cc2f973bfb5b6
    Related-Bug: #1578989
    Blueprint: strict-minimum-bandwidth-support

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

Related fix proposed to branch: master
Review: https://review.openstack.org/508149

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

Fix proposed to branch: master
Review: https://review.openstack.org/511510

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

Fix proposed to branch: master
Review: https://review.openstack.org/511774

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

Fix proposed to branch: master
Review: https://review.openstack.org/511936

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

Change abandoned by Rodolfo Alonso Hernandez (<email address hidden>) on branch: master
Review: https://review.openstack.org/511510
Reason: Superseded by https://review.openstack.org/#/c/511936/

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

Fix proposed to branch: master
Review: https://review.openstack.org/512396

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

Change abandoned by Rodolfo Alonso Hernandez (<email address hidden>) on branch: master
Review: https://review.openstack.org/511774
Reason: Superseded by https://review.openstack.org/#/c/512396/

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

Fix proposed to branch: master
Review: https://review.openstack.org/512674

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

Change abandoned by Rodolfo Alonso Hernandez (<email address hidden>) on branch: master
Review: https://review.openstack.org/512674
Reason: This patch will be merged with https://review.openstack.org/#/c/512396/

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

Change abandoned by Rodolfo Alonso Hernandez (<email address hidden>) on branch: master
Review: https://review.openstack.org/401254

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

Change abandoned by Rodolfo Alonso Hernandez (<email address hidden>) on branch: master
Review: https://review.openstack.org/508149
Reason: Nova spec not approved

Changed in neutron:
assignee: Rodolfo Alonso (rodolfo-alonso-hernandez) → nobody
Revision history for this message
Miguel Lavalle (minsel) wrote :

We will continue this in Rocky, when we have the required placement API functionality

Changed in neutron:
assignee: nobody → Miguel Lavalle (minsel)
Changed in neutron:
assignee: Miguel Lavalle (minsel) → Rodolfo Alonso (rodolfo-alonso-hernandez)
Changed in neutron:
assignee: Rodolfo Alonso (rodolfo-alonso-hernandez) → Miguel Lavalle (minsel)
Changed in neutron:
assignee: Miguel Lavalle (minsel) → Rodolfo Alonso (rodolfo-alonso-hernandez)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron-lib (master)

Reviewed: https://review.openstack.org/511936
Committed: https://git.openstack.org/cgit/openstack/neutron-lib/commit/?id=9ef0860033796ce38c29e9b541898b42fbb913c5
Submitter: Zuul
Branch: master

commit 9ef0860033796ce38c29e9b541898b42fbb913c5
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Fri Oct 13 18:47:55 2017 +0100

    Rehome placement client to neutron-lib

    The placement client is going to be used by other services aside from
    segments; e.g. QoS plugin. It makes sense to move this file to a common
    place, like neutron-lib.

    Closes-Bug: #1723452
    Partial-Bug: #1578989

    Change-Id: I2f7d204828a620152ec9e005e057fc7fd77f9126

Changed in neutron:
assignee: Rodolfo Alonso (rodolfo-alonso-hernandez) → Miguel Lavalle (minsel)
Changed in neutron:
assignee: Miguel Lavalle (minsel) → Rodolfo Alonso (rodolfo-alonso-hernandez)
Miguel Lavalle (minsel)
Changed in neutron:
assignee: Rodolfo Alonso (rodolfo-alonso-hernandez) → Miguel Lavalle (minsel)
Changed in neutron:
assignee: Miguel Lavalle (minsel) → Slawek Kaplonski (slaweq)
Changed in neutron:
assignee: Slawek Kaplonski (slaweq) → Miguel Lavalle (minsel)
Changed in neutron:
assignee: Miguel Lavalle (minsel) → Slawek Kaplonski (slaweq)
Changed in neutron:
assignee: Slawek Kaplonski (slaweq) → Miguel Lavalle (minsel)
Changed in neutron:
assignee: Miguel Lavalle (minsel) → Slawek Kaplonski (slaweq)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Reviewed: https://review.openstack.org/512396
Committed: https://git.openstack.org/cgit/openstack/neutron-lib/commit/?id=874cf4f550e9c10c8b03af6d735642bc61a589e6
Submitter: Zuul
Branch: master

commit 874cf4f550e9c10c8b03af6d735642bc61a589e6
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Mon Oct 16 20:24:55 2017 +0100

    Add new Resource Provider functions to placement client

    Added list_resource_providers function, which allows to retrieve
    a list of Resource Providers filtering by UUID or parent UUID.

    Added get_resource_provider function, which allows to retrieve an
    specific Resource Provider by its UUID.

    This feature depends on Nova Nested Resource Providers.

    Depends-On: I4db74e4dc682bc03df6ec94cd1c3a5f5dc927a7bi

    Change-Id: I6eb42b9a53c8001c5f14d4d1c9a98e060148ae21
    Partial-Bug: #1578989
    Co-Authored-By: Slawek Kaplonski <email address hidden>

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

Related fix proposed to branch: master
Review: https://review.openstack.org/552938

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

Related fix proposed to branch: master
Review: https://review.openstack.org/554532

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

Reviewed: https://review.openstack.org/554532
Committed: https://git.openstack.org/cgit/openstack/neutron-lib/commit/?id=f0a9959a7fd98b091a17a29544eacdbd6dd37337
Submitter: Zuul
Branch: master

commit f0a9959a7fd98b091a17a29544eacdbd6dd37337
Author: Lajos Katona <email address hidden>
Date: Tue Mar 20 14:00:29 2018 +0100

    Fix placement calls in placement client

    Based on the placement api-ref fix the already implemented placement API
    calls in the placement client of neutron-lib.

    Fixed/changed parts:
    - Add version header to create_resource_provider
    - Change create_inventory to update_resource_provider_inventories, as
    the http request is a PUT not a POST, and add exception to handle the
    case when the rp is not found.
    - Change update_inventory to update_resource_provider_inventory, to make
    the method name in sync with placement API ref.
    - Fix the failing unit tests, and cover the negative case for
    update_resource_provider_inventories.

    Change-Id: I336c57e734f91795038c5ba9074970d1f5522da2
    Related-Bug: #1578989

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

Reviewed: https://review.openstack.org/552938
Committed: https://git.openstack.org/cgit/openstack/neutron-lib/commit/?id=a24bf9841d1c3717c0f38778c0c63acd7028dbcd
Submitter: Zuul
Branch: master

commit a24bf9841d1c3717c0f38778c0c63acd7028dbcd
Author: Lajos Katona <email address hidden>
Date: Tue Mar 20 14:22:15 2018 +0100

    Add placement calls for bandwith resource provider

    Add placement calls that are necessary to report the necessary resource
    providers, traits, resource classes and inventories for bandwidth
    allocation in placement.

    Related-Bug: #1578989
    Change-Id: Ie3a14e5461d2d14ee77e1bd101943b7c28cf86f1

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

Related fix proposed to branch: master
Review: https://review.openstack.org/566047

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

Reviewed: https://review.openstack.org/508149
Committed: https://git.openstack.org/cgit/openstack/neutron-specs/commit/?id=dca619fd9e581a1863073460cde5b4d34db9dfa0
Submitter: Zuul
Branch: master

commit dca619fd9e581a1863073460cde5b4d34db9dfa0
Author: Bence Romsics <email address hidden>
Date: Wed May 9 13:53:58 2018 +0200

    QoS minimum bandwidth allocation in Placement API

    This spec describes how to model, from Neutron, a new resource provider
    in the Placement API to describe the bandwidth allocation.

    Based on a Rocky PTG discussion this is a re-work of the spec.

    Co-Authored-By: Rodolfo Alonso Hernandez <email address hidden>
    Co-Authored-By: Bence Romsics <email address hidden>
    Co-Authored-By: Balazs Gibizer <email address hidden>

    Related-Bug: #1578989
    Change-Id: Ib995837f6161bcceb09735a5601d8b79a25a7354
    See-Also: Ie7be551f4f03957ade9beb64457736f400560486

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

Reviewed: https://review.openstack.org/566047
Committed: https://git.openstack.org/cgit/openstack/neutron-lib/commit/?id=2b5d1fdd1f68a5231e57b8c55abfc84c9a6a48a0
Submitter: Zuul
Branch: master

commit 2b5d1fdd1f68a5231e57b8c55abfc84c9a6a48a0
Author: Lajos Katona <email address hidden>
Date: Wed May 2 16:30:26 2018 +0200

    Fix list_resource_providers filters

    list_resource_providers failed filtering as the filter parameters like
    name, or in_tree must be added to the url as query strings:
    /resource_providers?name=foo&in_tree=<uuid>

    Related-Bug: #1578989
    Change-Id: I794972e93dbcf7310154cc1cceef25b9df618450

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

Fix proposed to branch: master
Review: https://review.openstack.org/574781

Changed in neutron:
assignee: Slawek Kaplonski (slaweq) → Bence Romsics (bence-romsics)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (master)

Fix proposed to branch: master
Review: https://review.openstack.org/574783

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

Fix proposed to branch: master
Review: https://review.openstack.org/577220

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

Fix proposed to branch: master
Review: https://review.openstack.org/577223

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

Fix proposed to branch: master
Review: https://review.openstack.org/580387

Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.openstack.org/580664

Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.openstack.org/580665

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

Fix proposed to branch: master
Review: https://review.openstack.org/580666

Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Slawek Kaplonski (slaweq)
Changed in neutron:
assignee: Slawek Kaplonski (slaweq) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
tags: added: in-stable-rocky
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Slawek Kaplonski (slaweq)
Changed in neutron:
assignee: Slawek Kaplonski (slaweq) → Lajos Katona (lajos-katona)
Akihiro Motoki (amotoki)
Changed in neutron:
milestone: none → stein-rc1
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
Changed in neutron:
status: In Progress → Fix Released
89 comments hidden view all 169 comments
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/660687

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/660924

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

Reviewed: https://review.opendev.org/660687
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=d10ba94d36da7ad7eb6ac9339bcac81ab169b93e
Submitter: Zuul
Branch: master

commit d10ba94d36da7ad7eb6ac9339bcac81ab169b93e
Author: Bence Romsics <email address hidden>
Date: Wed May 22 13:01:17 2019 +0200

    Log when the placement service plugin is used wrongly

    Log explicitly when an invalid plugin combination is requested in the
    config.

    The placement service plugin cannot be used with non-ML2 core
    plugins. neutron-server already exits when misconfigured like that
    (when a plugin raises an uncaught exception in its __init__())
    so I didn't change anything about that. This change only adds a more
    explicit log message for this misconfiguration.

    Change-Id: Ida1a3188f8b3145cf270d280bf942b3950c0779c
    Related-Bug: #1578989
    Related-Bug: #1818479

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

Reviewed: https://review.opendev.org/660924
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=4445b380cffaae4898359c878f3a1900d86e44d7
Submitter: Zuul
Branch: master

commit 4445b380cffaae4898359c878f3a1900d86e44d7
Author: Lajos Katona <email address hidden>
Date: Wed May 22 16:59:52 2019 +0200

    Add devstack plugin for placement service plugin

    This helps running end-to-end tests in gate, see:
    https://review.opendev.org/629253

    Partial-Bug: #1578989
    See-Also: https://review.openstack.org/502306 (nova spec)
    See-Also: https://review.openstack.org/508149 (neutron spec)
    Change-Id: I6732909a10114dbc004043b754d47d974c3fe1cb

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/706875

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

Reviewed: https://review.opendev.org/706875
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=37fafeb6781504b506e6e399354d808ec8c0e31d
Submitter: Zuul
Branch: master

commit 37fafeb6781504b506e6e399354d808ec8c0e31d
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Mon Feb 10 15:06:50 2020 +0000

    Add SR-IOV agent resource provider information

    When the SR-IOV agent starts, print information about the Placement
    resource providers: bandwidth, inventory default configuration and
    hypervisor names.

    Change-Id: Ib34f7a4f850301b2a8bf739c9d8d5e73bcc1bc48
    Related-Bug: #1578989

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/740269

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

Change abandoned by Rodolfo Alonso Hernandez (<email address hidden>) on branch: master
Review: https://review.opendev.org/740269
Reason: This feature is not going to provide the NUMA policy affinity through the port resource request but using a specific extension. We don't need this refactor.

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

Change abandoned by "Slawek Kaplonski <email address hidden>" on branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/778670
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/+/786441

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

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

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

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

commit df5cb28737453e2dfee17e177160fa6d7a59b7e0
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Fri Feb 19 17:27:39 2021 +0000

    [OVN][Placement] Add a SB Chassis event to track changes in BW config

    Added a new OVN Client extension: OVNClientPlacementExtension. This
    extension is in charge of handling the bandwidth information stored
    in the OVN database, in the "Chassis" registers on the
    "ovn-cms-options" dictionary.

    Three new keys are created to store the resource provider information
    needed to parameterize the network backend bandwidth information,
    following the implementation done in OVS and SR-IOV:
    - resource_provider_bandwidths
    - resource_provider_inventory_defaults
    - resource_provider_hypervisors

    When the OVN Client is started, the Placement extension will check if
    the "placement" extension is loaded. It will also create an event to
    check any configuration change done in any "Chassis" register.

    The Placement extension will read the initial configuration stored
    in the OVN database and will populate it to Placement API, creating
    the needed resource providers, traits and inventories.

    NOTE: This patch belongs to a series of patches to implement
    minimum bandwidth scheduling blueprint in OVN backend. The next
    patch will make OVN backend scheduling aware using the information
    stored in Placement API and the port information passed by Nova when
    a VM is created.

    Partial-Bug: #1578989

    Change-Id: I8ba38b8ace8852009fba8712aafa9f88c2b93ccb

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

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

commit f8ca735e5f3dfb1a6cff4f23de7a554447aa7f30
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Mon Mar 8 17:19:14 2021 +0000

    Move mech driver VNIC validation to SimpleAgentMechanismDriverBase

    The mechanism driver support VNIC types validation is done now in the
    "SimpleAgentMechanismDriverBase" class __init__ method. If a subclass
    needs to administratively prohibit any VNIC type supported by default,
    "vnic_type_prohibit_list" must be passed to the base class __init__
    call.

    Related-Bug: #1578989

    Change-Id: Ic25a8a7c716b4980ad2542b44519f77c6fdad309

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/+/801712

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

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

commit a6f975ac035ca7c67d0d126b76eb280e1b9d1829
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Fri Feb 19 17:27:39 2021 +0000

    [OVN][Placement] Add a SB Chassis event to track changes in BW config

    Added a new OVN Client extension: OVNClientPlacementExtension. This
    extension is in charge of handling the bandwidth information stored
    in the OVN database, in the "Chassis" registers on the
    "ovn-cms-options" dictionary.

    Three new keys are created to store the resource provider information
    needed to parameterize the network backend bandwidth information,
    following the implementation done in OVS and SR-IOV:
    - resource_provider_bandwidths
    - resource_provider_inventory_defaults
    - resource_provider_hypervisors

    When the OVN Client is started, the Placement extension will check if
    the "placement" extension is loaded. It will also create an event to
    check any configuration change done in any "Chassis" register.

    The Placement extension will read the initial configuration stored
    in the OVN database and will populate it to Placement API, creating
    the needed resource providers, traits and inventories.

    NOTE: This patch belongs to a series of patches to implement
    minimum bandwidth scheduling blueprint in OVN backend. The next
    patch will make OVN backend scheduling aware using the information
    stored in Placement API and the port information passed by Nova when
    a VM is created.

    NOTE: this patch improves [1], fixing the error [2] reported in [3].

    [1]https://review.opendev.org/c/openstack/neutron/+/776701
    [2]https://paste.opendev.org/show/807614/
    [3]https://launchpad.net/bugs/1936983

    Partial-Bug: #1578989
    Change-Id: I63e81aebce2621226ff2cfe91f16c97913c137e8

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

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

commit 1248b36ddc90df186e16a3a85336f332330f835c
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Thu Apr 15 13:38:25 2021 +0000

    [OVN][Placement] Add support for minimum bandwidth QoS rules

    In order to be able to schedule a port bound to OVN backend and a
    minimum bandwidth rule, this type of QoS rule should be supported
    in the mechanism QoS driver ``OVNQosDriver``.

    This new QoS rule has no driver enforcement; it is used only for
    Placement scheduling.

    Partial-Bug: #1578989

    Change-Id: Ia10aae1820f13bb28956d9ef45eced2dba71be98

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/+/821693

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

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

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

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

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

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

commit 0ae8eba7e73e050369478ba095c03371ed5f5718
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Wed Dec 15 15:01:21 2021 +0000

    [OVN][Placement] Make the Placement reporter compatible with OVN

    Make the "PlacementReportPlugin" and the "PlacementReporterAgents"
    classes compatible with agent-less mechanism drivers. OVN mechanism
    driver cannot report any agent to the supported agent type list.

    Partial-Bug: #1578989
    Change-Id: Ic9e8586991866ebca0b24bfe691e541c198d18d7

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

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

commit 56dbfb7ac47168ed5c9a37f81f041580d39d0eac
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Wed Dec 15 15:50:27 2021 +0000

    [OVN][Placement] Read the initial config in the maintenance worker

    Read the chassis bandwidth configuration (stored in the "Chassis"
    registers) only once, in the maintenance worker. The SB synchronizer
    will call the OVN client Placement extension
    "read_initial_chassis_config" method.

    This new approach changes how the Placement information is stored. The
    Placement extension does not store anymore a local cache of the
    resource providers. Instead of this, in future patches, when this
    information is required, the Placement extension will retrieve this
    information from the SB DB, reading the content from the "Chassis"
    registers and parsing the values.

    Partial-Bug: #1578989
    Change-Id: I160b1dda85596277125c532ea4ce4df8e4d25b63

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

Change abandoned by "Rodolfo Alonso <email address hidden>" on branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/821693
Reason: Superseded by https://review.opendev.org/c/openstack/neutron/+/821865. The BW chassis information is stored, no longer in local worker cache but in the SB chassis registers.

The initial BW config is read when the server starts (``OvnSbSynchronizer.do_sync``).

Any change in a SB chassis register is attended by ``ChassisBandwidthConfigEvent`` and sent to the Placement API.

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

Change abandoned by "Slawek Kaplonski <email address hidden>" on branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/786478
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 : Related fix proposed to neutron (stable/xena)

Related fix proposed to branch: stable/xena
Review: https://review.opendev.org/c/openstack/neutron/+/848430

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to neutron (stable/wallaby)

Related fix proposed to branch: stable/wallaby
Review: https://review.opendev.org/c/openstack/neutron/+/848431

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to neutron (stable/victoria)

Related fix proposed to branch: stable/victoria
Review: https://review.opendev.org/c/openstack/neutron/+/848432

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to neutron (stable/ussuri)

Related fix proposed to branch: stable/ussuri
Review: https://review.opendev.org/c/openstack/neutron/+/848433

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

Reviewed: https://review.opendev.org/c/openstack/neutron/+/848430
Committed: https://opendev.org/openstack/neutron/commit/616085537d4a20da4e0f44bb402b3b3f098af92b
Submitter: "Zuul (22348)"
Branch: stable/xena

commit 616085537d4a20da4e0f44bb402b3b3f098af92b
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Wed Dec 15 15:01:21 2021 +0000

    [OVN][Placement] Make the Placement reporter compatible with OVN

    Make the "PlacementReportPlugin" and the "PlacementReporterAgents"
    classes compatible with agent-less mechanism drivers. OVN mechanism
    driver cannot report any agent to the supported agent type list.

    NOTE: this patch belongs to a series of patches to provide support
    in OVN to report to Placement. However, this patch is backported to
    stable releases to fix LP#1980488. This way, OVN won't report anything
    to Placement and at the same time won't break the call to
    "handle_placement_config" when another mech driver agent (in the
    LP example SR-IOV) pushes a heartbeat and updates the resource
    provider values.

    Closes-Bug: #1980488
    Related-Bug: #1578989
    Change-Id: Ic9e8586991866ebca0b24bfe691e541c198d18d7
    (cherry picked from commit 0ae8eba7e73e050369478ba095c03371ed5f5718)

tags: added: in-stable-xena
tags: added: in-stable-wallaby
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to neutron (stable/wallaby)

Reviewed: https://review.opendev.org/c/openstack/neutron/+/848431
Committed: https://opendev.org/openstack/neutron/commit/05345730925d1fe15cf055a7cf669121eb0dfaba
Submitter: "Zuul (22348)"
Branch: stable/wallaby

commit 05345730925d1fe15cf055a7cf669121eb0dfaba
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Wed Dec 15 15:01:21 2021 +0000

    [OVN][Placement] Make the Placement reporter compatible with OVN

    Make the "PlacementReportPlugin" and the "PlacementReporterAgents"
    classes compatible with agent-less mechanism drivers. OVN mechanism
    driver cannot report any agent to the supported agent type list.

    NOTE: this patch belongs to a series of patches to provide support
    in OVN to report to Placement. However, this patch is backported to
    stable releases to fix LP#1980488. This way, OVN won't report anything
    to Placement and at the same time won't break the call to
    "handle_placement_config" when another mech driver agent (in the
    LP example SR-IOV) pushes a heartbeat and updates the resource
    provider values.

    Closes-Bug: #1980488
    Related-Bug: #1578989
    Change-Id: Ic9e8586991866ebca0b24bfe691e541c198d18d7
    (cherry picked from commit 0ae8eba7e73e050369478ba095c03371ed5f5718)
    (cherry picked from commit 616085537d4a20da4e0f44bb402b3b3f098af92b)

tags: added: in-stable-victoria
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to neutron (stable/victoria)

Reviewed: https://review.opendev.org/c/openstack/neutron/+/848432
Committed: https://opendev.org/openstack/neutron/commit/4c35618dc9470a98f9395ea59b608bfb52cf8c7c
Submitter: "Zuul (22348)"
Branch: stable/victoria

commit 4c35618dc9470a98f9395ea59b608bfb52cf8c7c
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Wed Dec 15 15:01:21 2021 +0000

    [OVN][Placement] Make the Placement reporter compatible with OVN

    Make the "PlacementReportPlugin" and the "PlacementReporterAgents"
    classes compatible with agent-less mechanism drivers. OVN mechanism
    driver cannot report any agent to the supported agent type list.

    NOTE: this patch belongs to a series of patches to provide support
    in OVN to report to Placement. However, this patch is backported to
    stable releases to fix LP#1980488. This way, OVN won't report anything
    to Placement and at the same time won't break the call to
    "handle_placement_config" when another mech driver agent (in the
    LP example SR-IOV) pushes a heartbeat and updates the resource
    provider values.

    Closes-Bug: #1980488
    Related-Bug: #1578989
    Change-Id: Ic9e8586991866ebca0b24bfe691e541c198d18d7
    (cherry picked from commit 0ae8eba7e73e050369478ba095c03371ed5f5718)
    (cherry picked from commit 616085537d4a20da4e0f44bb402b3b3f098af92b)

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

Reviewed: https://review.opendev.org/c/openstack/neutron/+/848433
Committed: https://opendev.org/openstack/neutron/commit/f271d66c87cdb3711e649014aa4445957483aef1
Submitter: "Zuul (22348)"
Branch: stable/ussuri

commit f271d66c87cdb3711e649014aa4445957483aef1
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Wed Dec 15 15:01:21 2021 +0000

    [OVN][Placement] Make the Placement reporter compatible with OVN

    Make the "PlacementReportPlugin" and the "PlacementReporterAgents"
    classes compatible with agent-less mechanism drivers. OVN mechanism
    driver cannot report any agent to the supported agent type list.

    NOTE: this patch belongs to a series of patches to provide support
    in OVN to report to Placement. However, this patch is backported to
    stable releases to fix LP#1980488. This way, OVN won't report anything
    to Placement and at the same time won't break the call to
    "handle_placement_config" when another mech driver agent (in the
    LP example SR-IOV) pushes a heartbeat and updates the resource
    provider values.

    Closes-Bug: #1980488
    Related-Bug: #1578989
    Change-Id: Ic9e8586991866ebca0b24bfe691e541c198d18d7
    (cherry picked from commit 0ae8eba7e73e050369478ba095c03371ed5f5718)
    (cherry picked from commit 616085537d4a20da4e0f44bb402b3b3f098af92b)

tags: added: in-stable-ussuri
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/+/849715

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

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

commit 82d14eee6126b862fbfc1f5085c07940fb9d8ebe
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Fri Jul 8 12:42:15 2022 +0000

    QoS minimum bandwidth documentation: OVN backend

    Updated documentation about minimum guaranteed bandwidth support
    for OVN backend. This mech driver is capable of informing the
    Placement API about the bandwidth resources of each chassis and
    schedule a port depending on the minimum bandwidth rules applied.

    This patch also updates the document pointing to the new
    ``resource_requeste`` blob passed to Nova with the information of
    the requested resources of each port.

    Related-Bug: #1578989
    Change-Id: I75401fa64e1ccd814aa485a74b38092849ff2a18

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

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

commit edafe03adac24dcc5c7528114209c1d78b9db2e0
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Wed Dec 15 17:56:34 2021 +0000

    [OVN][Placement] Drive binding by placement allocation

    Add OVN to the mechanism drivers that support placement allocation.
    The choice of the mechanism driver during binding process was
    implemented in [1], using the "port" information provided by Nova
    in "binding:profile".

    The OVN mechanism driver class inherits from "MechanismDriver", that
    added the API method "responsible_for_ports_allocation". [1]
    implements this method for "AgentMechanismDriverBase", but OVN does
    not inherit from this class, as OVS or SR-IOV mechanism drivers,
    because is an agent-less mech driver.

    This patch adds the specific implementation to allow the ML2 to
    decide if the OVN mechanism driver is responsible for binding the
    port given, based on the "port" "allocation" information and the
    OVN Placement information retrieved from the SB DB Chassis
    registers [2].

    [1]https://review.opendev.org/c/openstack/neutron/+/574783
    [2]https://review.opendev.org/c/openstack/neutron/+/801712

    Partial-Bug: #1578989
    Change-Id: I88376c41c9a46b2c793ad6b3ab8e0baea99b8851

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/+/860639

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

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

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

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

commit 49eab7d308b598e4c4966110d6aa61cd091cc3f6
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Thu Nov 17 21:14:40 2022 +0100

    Move registration "ChassisBandwidthConfigEvent" to OvnSbIdl init

    The "ChassisBandwidthConfigEvent" event registration is now done in the
    "OvnSbIdl" class initialization. That ensures this event is registered
    in a worker thread.

    If the event is called before the "OVNMechanismDriver"'s "OVNClient"
    has been instantiated, the event is skipped. When the OVN placement
    extension is loaded, all chassis configurations are read and loaded,
    thus any previous event is not relevant.

    This patch also adds a "match_fn" check to
    "ChassisBandwidthConfigEvent". If during an update event, the bandwidth
    options are not modified, this class does not update the resource
    provider inventories.

    Closes-Bug: #1998108
    Related-Bug: #1578989
    Change-Id: I74883041c642b9498299ebf2b5bf885776e241e0

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to neutron (stable/zed)

Related fix proposed to branch: stable/zed
Review: https://review.opendev.org/c/openstack/neutron/+/868784

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

Reviewed: https://review.opendev.org/c/openstack/neutron/+/868784
Committed: https://opendev.org/openstack/neutron/commit/74b6c1dd0bd9034578d7be81940b36b553ffe627
Submitter: "Zuul (22348)"
Branch: stable/zed

commit 74b6c1dd0bd9034578d7be81940b36b553ffe627
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Thu Nov 17 21:14:40 2022 +0100

    Move registration "ChassisBandwidthConfigEvent" to OvnSbIdl init

    The "ChassisBandwidthConfigEvent" event registration is now done in the
    "OvnSbIdl" class initialization. That ensures this event is registered
    in a worker thread.

    If the event is called before the "OVNMechanismDriver"'s "OVNClient"
    has been instantiated, the event is skipped. When the OVN placement
    extension is loaded, all chassis configurations are read and loaded,
    thus any previous event is not relevant.

    This patch also adds a "match_fn" check to
    "ChassisBandwidthConfigEvent". If during an update event, the bandwidth
    options are not modified, this class does not update the resource
    provider inventories.

    Closes-Bug: #1998108
    Related-Bug: #1578989
    Change-Id: I74883041c642b9498299ebf2b5bf885776e241e0
    (cherry picked from commit 49eab7d308b598e4c4966110d6aa61cd091cc3f6)

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

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

commit 3ebdfe612a931a044877b2041a4ab68489bde5b7
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Sun Oct 2 17:29:32 2022 +0200

    Support for minimum bandwidth rules in tunnelled networks

    This patch adds support for QoS minimum bandwidth rules in tunnelled
    networks. Now the ML2/OVS and ML2/OVN mechanism drivers can represent
    in the Placement API the available bandwidth of the tunnelled networks
    in each compute host.

    Both mechanism drivers represent the compute VTEP (VXLAN) or TEP
    (Geneve) interface as an IP address. This new resource provider
    (by default called "rp_tunnelled") represents the available bandwidth
    of this interface. Any new port created in a compute node that belongs
    to a tunnelled network, will request to the Placement API the
    corresponding bandwidth from the resource provider inventory.

    This patch does not provide backend enforcement support for minimum
    bandwidth rules.

    RFE spec: https://review.opendev.org/c/openstack/neutron-specs/+/860859

    What is missing and will be added in next patches:
    * Tempest tests, that will be pushed to the corresponding repository.

    Depends-On: https://review.opendev.org/c/openstack/neutron-tempest-plugin/+/863880

    Partial-Bug: #1991965
    Related-Bug: #1578989
    Change-Id: I3bfc2c0f9566bcc6861ca91339e32257ea92c7e9

Displaying first 40 and last 40 comments. View all 169 comments or add a comment.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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