[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

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

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

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

Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
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/581364

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

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

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

commit 679481f374c969d4887fe686f342dd04ab918b62
Author: Bence Romsics <email address hidden>
Date: Tue Jun 12 16:40:30 2018 +0200

    Mechanism driver API: responsible_for_rsc_provider

    Allow mechanism manager to query drivers if they are responsible for a
    resource provider or not.

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

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 neutron-lib (master)

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

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 neutron (master)

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

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

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

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

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 neutron (master)

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

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

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

commit e77c9befd4677c847a6afff4cb164b02cceb9352
Author: Lajos Katona <email address hidden>
Date: Thu Jul 5 15:32:33 2018 +0200

    Ingress direction for min bandwidth rule

    Make possible to have ingress direction for QoS minimum_bandwidth_rule.
    This will not automatically mean that the enforcement will work on the
    dataplane for both directions.
    The actual plan is to have only placement based enforcement for both
    egress and ingress for all reference (sriov, ovs, linuxbridge)
    implementations.

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

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 neutron (master)

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

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)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

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

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)
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/592323

Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
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/592380

Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
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/592757

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)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron-lib (master)

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

commit 203f4f06961481e4013dd11c0e74afb9ffe354a4
Author: Bence Romsics <email address hidden>
Date: Fri Jul 6 15:22:50 2018 +0200

    Placement client: ensure_resource_provider

    All other API resources (ie. traits, resource_provider_traits and
    resource_provider_inventories) we need to report on for minimum
    guaranteed bandwidth have update methods that can be called in one go,
    either because they have update-or-create or update-overrides-all
    semantics. Here we add the 'ensure_resource_provider' method so
    resource providers also have a similarly simple way of being kept in
    sync. We also add 'update_resource_provider' as a pre-requisite. On
    the side we also fix a little, silent unit test type error.

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

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

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

commit 74c62da3b5076015563b9f8fe269818546db66cb
Author: Bence Romsics <email address hidden>
Date: Fri Jul 6 15:25:06 2018 +0200

    Placement client: optional RP generations

    The Placement API has the concept of resource provider generations to
    enable the co-ordination of multiple API clients, so they can avoid
    accidentally overwriting each other's updates.

    However when we know that a single client writes certain resource
    providers then the generation handling becomes an unnecessary extra
    API round-trip. Ideally the Placement API would give us a chance to
    express our ignorance about multi-client coordination (accepting that
    a single client can overwrite its own previous updates).

    Until the Placement API gives us such a feature we implement it in
    the client lib, by making 'resource_provider_generation' parameters
    optional. This is inferior to the API doing the same because we may
    still see GenerationConflict exceptions even when we said
    method(..., resource_provider_generation=None).

    Later changes for the minimum guaranteed bandwidth
    feature need 'resource_provider_generation' to be
    optional for 'update_resource_provider_traits' and
    'update_resource_provider_inventories'. For the sake of consistency
    we do the same to 'update_resource_provider_inventory'.

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

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

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

commit d32e570361a636531a2a143fdf004a81e3e28894
Author: Bence Romsics <email address hidden>
Date: Thu Aug 16 14:37:55 2018 +0200

    Placement client: move to neutron_lib.placement

    Move neutron_lib.clients.placement to neutron_lib.placement.client
    with the intent of consolidating all Placement code under
    neutron_lib.placement.

    Change-Id: I48babd7e8d9fddb4c072f12515676dff1c08ef17
    Related-Bug: #1578989

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

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

commit b271a336b13c0d8d6b5ef0078412d87040094747
Author: Bence Romsics <email address hidden>
Date: Fri Jul 6 15:32:40 2018 +0200

    Placement: constants

    Introduce a constants file for later use for symbols in Placement,
    including constants for:

    * custom trait prefixes
    * resource class names (though that should be replaced as soon as we
      have an os-resource-classes package)
    * known inventory parameters to validate config options

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

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

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

commit 579e0ccabbd5ec132366fe51f46be653cbf15986
Author: Bence Romsics <email address hidden>
Date: Fri Jul 6 15:33:12 2018 +0200

    Placement: utils

    * to generate Placement trait names,
    * to generate Placement resource provider UUIDs, and
    * to uniformly parse and validate Placement-related config options in
      all agents.

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

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

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

commit 061a77b4f2d2c8c000b475ee034841a6096c9465
Author: Lajos Katona <email address hidden>
Date: Tue Jul 17 17:31:05 2018 +0200

    Introduce Port resource request extension

    The resources needed by a port are expressed to nova via
    resource_request extending the port.
    If the port requested by nova boot has resource_request attribute, that
    means that placement must enforce the minimum bandwidth requirements.

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

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

Reviewed: https://review.openstack.org/592757
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=28e07d4c5eb9eec0c51f0e6b055c8ded64bc2d13
Submitter: Zuul
Branch: master

commit 28e07d4c5eb9eec0c51f0e6b055c8ded64bc2d13
Author: Hongbin Lu <email address hidden>
Date: Thu Aug 16 22:24:27 2018 +0000

    Doc: update the qos devref about SR-IOV support

    SR-IOV has added support for enforcing egress minimum bandwidth [1]
    and this commit updates the devref about that.

    [1] https://review.openstack.org/#/c/347302/

    Change-Id: I0e637b893e60d7fdfb1ab4cece15aad74f43d3b5
    Related-Bug: #1578989

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

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

commit 9f32a2d04ee0462bfc5099f1878c5a72667182c1
Author: Lajos Katona <email address hidden>
Date: Thu Aug 16 10:41:43 2018 +0200

    api-ref: Add port-resource-request extension

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

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 neutron (master)

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

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

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

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

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

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)
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/606034

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

Change abandoned by Lajos Katona (<email address hidden>) on branch: master
Review: https://review.openstack.org/605079

Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Slawek Kaplonski (slaweq)
Changed in neutron:
assignee: Slawek Kaplonski (slaweq) → Lajos Katona (lajos-katona)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron-tempest-plugin (master)

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

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 neutron (stable/rocky)

Fix proposed to branch: stable/rocky
Review: https://review.openstack.org/609724

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

Reviewed: https://review.openstack.org/581029
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=360fde9f88cb9fbddcfacc399ed6bfa18ebbfe30
Submitter: Zuul
Branch: master

commit 360fde9f88cb9fbddcfacc399ed6bfa18ebbfe30
Author: Lajos Katona <email address hidden>
Date: Mon Jul 9 13:37:25 2018 +0200

    Ingress direction for min bandwidth rule

    Add API extension for QoS minimum bw rule ingress direction.

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

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

Reviewed: https://review.openstack.org/609368
Committed: https://git.openstack.org/cgit/openstack/neutron-tempest-plugin/commit/?id=b1c48b668855aae30e5c692b93976cb3f87fdf74
Submitter: Zuul
Branch: master

commit b1c48b668855aae30e5c692b93976cb3f87fdf74
Author: Lajos Katona <email address hidden>
Date: Wed Oct 10 13:47:17 2018 +0200

    Remove test_rule_create_fail_for_direction_ingress

    When the API extension qos-bw-minimum-ingress will be on master (see:
    https://review.openstack.org/584927) the test
    neutron_tempest_plugin.api.test_qos.QosMinimumBandwidthRuleTestJSON.
    test_rule_create_fail_for_direction_ingress is useless, so it can be
    removed from master, and to keep the coverage for stable branches there
    should be fullstack test: I6ee08d43aed60a7dd2d3281deaccfac2f3712b33

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

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

Reviewed: https://review.openstack.org/584927
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=4df02ee93cd3c77d2d0bba0f5c1574c22b477eea
Submitter: Zuul
Branch: master

commit 4df02ee93cd3c77d2d0bba0f5c1574c22b477eea
Author: Lajos Katona <email address hidden>
Date: Mon Jul 23 14:52:20 2018 +0200

    Enable ingress direction for min_bw rule

    Enable QoS minimum-bandwidth rule for ovs and sriov backends for both
    ingress and egress directions.
    Add qos-bw-limit-direction as supported extension to qos-plugin, and
    add create/delete/update_minimum_bandwidth and
    delete_minimum_bandwidth_ingress empty methods to sriov/ovs/linuxbridge
    extension drivers.

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

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

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

commit eb4221e6f0b48b131f2009168b3b22f5a3d4dd8f
Author: Lajos Katona <email address hidden>
Date: Wed Jul 18 12:41:27 2018 +0200

    Introduce Port resource request extension

    The resources needed by a port are expressed to nova via
    resource_request extending the port.
    If the port requested by nova boot has resource_request attribute, that
    means that placement must enforce the minimum bandwidth requirements.

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

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

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

commit f352f9faaa2927709ec3863035e6b619e5fc34b1
Author: Bence Romsics <email address hidden>
Date: Tue Jul 10 15:37:52 2018 +0200

    ovs-agent: Report resource info in heartbeat

    Example config for ovs-agent:

    ml2_conf.ini:
    [ovs]
    bridge_mappings = physnet0:br-test
    resource_provider_bandwidths = br-test:100000:100000

    Agent configurations now includes 'resource_provider_bandwidths' and
    'resource_provider_inventory_defaults'.

    Change-Id: Ib197573e5cdb60ef0db4e7a771c3179bf9d5bb95
    Co-Authored-By: Lajos Katona <email address hidden>
    Depends-On: https://review.openstack.org/577220
    Partial-Bug: #1578989
    See-Also: https://review.openstack.org/502306 (nova spec)
    See-Also: https://review.openstack.org/508149 (neutron spec)

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

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

commit f849eba286e87d51424e1e768619680297ada5cb
Author: Lajos Katona <email address hidden>
Date: Mon Jul 16 15:31:44 2018 +0200

    Add both directions for minimum bw rule in doc

    Changed QoS backend/rule support table in devref documentation to show
    that Minimum Bandwidth rule can support both Egress and Ingress
    directions in case of placement based enforcement.
    Added a new table to show which directions are supported for Minimum
    Bandwidth rule by the network backends, and how that depends on the
    enforcement type (dataplane or placement).

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

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

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

commit a85c5ed3fb1d0cf9af14b976a233c682ffa89c6b
Author: Lajos Katona <email address hidden>
Date: Fri Sep 28 09:32:37 2018 +0200

    supported_vnic_type configurable for ovs

    Now supported_vnic_types is hardcoded to the mechanism drivers, but that
    can depend on several factors, like type of the NIC, admin decision,
    etc.
    With this patch we put the right to decide which vnic types are
    supported for ovs agent into the hands of the admin, by allowing
    blacklisting items from the mechanism driver specific list.
    Background: http://eavesdrop.openstack.org/meetings/neutron_qos/2018/
    neutron_qos.2018-07-31-15.00.log.html#l-58

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

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

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

commit d7d433f7290517c4e68290e46e6bcb859f1930a4
Author: Bence Romsics <email address hidden>
Date: Mon Jul 9 16:16:52 2018 +0200

    sriov-agent: Report resource info in heartbeat

    Example config for sriov-agent:

    sriov_agent.ini:
    [sriov_nic]
    physical_device_mappings = physnet0:ens5,physnet0:ens6
    resource_provider_bandwidths = ens5:100000:100000,ens6:100000:100000

    Agent configurations now includes 'resource_provider_bandwidths' and
    'resource_provider_inventory_defaults'.

    Change-Id: I1af798d404ed94cd30da3f92734bea911bbc3ac7
    Co-Authored-By: Lajos Katona <email address hidden>
    Depends-On: https://review.openstack.org/577220
    Partial-Bug: #1578989
    See-Also: https://review.openstack.org/502306 (nova spec)
    See-Also: https://review.openstack.org/508149 (neutron spec)

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

Reviewed: https://review.openstack.org/598463
Committed: https://git.openstack.org/cgit/openstack/neutron-tempest-plugin/commit/?id=dc9c6d6dbe12dd0f760d54edfef84d58551a30a7
Submitter: Zuul
Branch: master

commit dc9c6d6dbe12dd0f760d54edfef84d58551a30a7
Author: Lajos Katona <email address hidden>
Date: Mon Aug 27 16:08:51 2018 +0200

    test for minimum bw ingress direction

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

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

Reviewed: https://review.openstack.org/600002
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=277c1e77b2e5ac2e281a4178cd4c679d96e45c83
Submitter: Zuul
Branch: master

commit 277c1e77b2e5ac2e281a4178cd4c679d96e45c83
Author: Lajos Katona <email address hidden>
Date: Thu Aug 30 14:38:41 2018 +0200

    ovs-agent: fullstack test resource info report

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

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

Reviewed: https://review.openstack.org/609724
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=8f549935c7b1597d6b40fc66b59df87708fadec0
Submitter: Zuul
Branch: stable/rocky

commit 8f549935c7b1597d6b40fc66b59df87708fadec0
Author: Lajos Katona <email address hidden>
Date: Wed Oct 10 15:06:03 2018 +0200

    Fullstack test for minimum bw rule ingress create

    With the introduction of qos-bw-minimum-ingress direction the tempest
    test neutron_tempest_plugin.api.test_qos.
    QosMinimumBandwidthRuleTestJSON.
    test_rule_create_fail_for_direction_ingress is useless, but to keep the
    coverage on stable branches that test is backported as neutron fullstack
    test.

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

tags: added: in-stable-rocky
Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.openstack.org/586596
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=8bd5ecd4fc0c7c6199983c710c62b1ad88039a4f
Submitter: Zuul
Branch: master

commit 8bd5ecd4fc0c7c6199983c710c62b1ad88039a4f
Author: Bence Romsics <email address hidden>
Date: Fri Jul 27 14:19:58 2018 +0200

    notification: Add 'status' to agent after_create/update

    Make the same status information available to notification consumers
    (resource==agent, event==after_create/after_update) as it was already
    available where the notification is sent in class AgentDbMixin.

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

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

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

commit d860109bf60421a721e5009ca6f66a767bfd3488
Author: Lajos Katona <email address hidden>
Date: Fri Sep 28 10:08:10 2018 +0200

    supported_vnic_type configurable for sriov

    Now supported_vnic_types is hardcoded to the mechanism drivers, but that
    can depend on several factors, like type of the NIC, admin decision,
    etc.
    With this patch we put the right to decide which vnic types are
    supported for ovs agent into the hands of the admin, by allowing
    blacklisting items from the mechanism driver specific list.
    Background: http://eavesdrop.openstack.org/meetings/neutron_qos/2018/
    neutron_qos.2018-07-31-15.00.log.html#l-58

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

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

Reviewed: https://review.openstack.org/600409
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=9b23e1be07a8d686a403ba8939ec5ac79d4ebc74
Submitter: Zuul
Branch: master

commit 9b23e1be07a8d686a403ba8939ec5ac79d4ebc74
Author: Lajos Katona <email address hidden>
Date: Wed Sep 5 14:04:17 2018 +0200

    sriov-agent: fullstack test resource info report

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

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

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

Reviewed: https://review.openstack.org/586597
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=69d6b86f56cff0af76edc30fd01148e79fdd688a
Submitter: Zuul
Branch: master

commit 69d6b86f56cff0af76edc30fd01148e79fdd688a
Author: Bence Romsics <email address hidden>
Date: Tue Jul 24 15:13:15 2018 +0200

    ovs/sriov mech drivers: resource_provider_uuid5_namespace

    Set a UUID v5 namespace for the Open vSwitch mechanism driver and
    another for the SR-IOV mechanism driver. These will be used to
    deterministically generate Placement Resource Provider UUIDs.

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

Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
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 neutron-specs (master)

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

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

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

commit 2af53625e7a2e39e53db394f97328e6427cd9fb9
Author: Bence Romsics <email address hidden>
Date: Tue Nov 13 16:48:02 2018 +0100

    Adapt to changed resource class names

    Before the final merge of the minimum bandwidth resource classes
    they got renamed in Nova and Placement. So we have to adapt.

    This change retroactively updates the spec.

    Change-Id: Ia347c71381ec2fd82a1b197f5d0fbed69a70ad70
    Partial-Bug: #1578989
    See-Also: I996bf705b14b564106426a2e57299638fb178750
    See-Also: https://review.openstack.org/616194

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

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

commit b2ad10386ba6fd3a8f999b851755b15ce772bf28
Author: Bence Romsics <email address hidden>
Date: Wed Nov 7 14:15:07 2018 +0100

    Adapt to changed resource class names

    Before the final merge of the minimum bandwidth resource classes
    they got renamed in Nova and Placement. So we have to adapt.

    The previous names were never released or used in any other way
    outside of WIP patches, so there's no upgrade impact.

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

Changed in neutron:
assignee: Bence Romsics (bence-romsics) → Lajos Katona (lajos-katona)
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/619300

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

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

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

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

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

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

commit 74600f1d9c3a285a838d403ea9194ff9bd714163
Author: Bence Romsics <email address hidden>
Date: Wed Aug 15 11:24:50 2018 +0200

    Placement client: clean up docstrings

    Many :raises: and :returns: are missing from the docstrings.
    This patch adds them and clarifies the wording in a few places.

    Change-Id: If642cf94b04f63bfaca1eb2f6c8c3c6e27c26c00
    Related-Bug: #1578989

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

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

commit 5227491b8abfdabe8d6c3625f2bb544cc7cfb7e8
Author: Bence Romsics <email address hidden>
Date: Wed Nov 21 17:07:55 2018 +0100

    Placement client: do not swallow exceptions

    Placement client unconditionally swallowed many exceptions. I cannot
    tell why that was ever considered a good idea. I can imagine some
    users wanting to ignore some of those error conditions, but it should
    be the responsibility of the user to decide. The client should not
    unconditionally ignore all errors, but leave this choice for the user
    of the client.

    Particularly this placement client will be used by later patches for
    minimum-bandwidth-allocation-placement-api where we do want to know
    about some of these errors and retry placement operations when they
    fail.

    Change-Id: Ia14ba8cb273166fe3075328229f30d0cebae0480
    Related-Bug: #1578989

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

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

commit 1e6a07c5fc8275b11044091cfbd0b580d3a0ebd3
Author: Bence Romsics <email address hidden>
Date: Wed Nov 21 17:12:51 2018 +0100

    Placement client: improve Placement 4xx exceptions

    For 4xx errors Placement sends back a complex JSON object describing
    the error. When turned into an exception that becomes a non-trivial
    attribute of the error object. Usual ways of logging an exception (that
    is LOG.exception) completely ignore that attribute, therefore the real
    error message is not logged. For example we only logged the fact that
    we received a BadRequest response and nothing else while Placement did
    provide a whole lot more detail. Here we dig out that error detail and
    re-throw a better exception with it.

    Change-Id: Id97116c1c298f54f898a746d6e3c96b1f412bb49
    Related-Bug: #1578989

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

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

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

Reviewed: https://review.openstack.org/616594
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=97c9c4656dd208fb34bd300bbcde058cfe9a1944
Submitter: Zuul
Branch: master

commit 97c9c4656dd208fb34bd300bbcde058cfe9a1944
Author: Lajos Katona <email address hidden>
Date: Thu Sep 20 16:54:19 2018 +0200

    get_standard_device_mappings for mechdriver

    get_mappings for machanism drivers return back different dicts for
    different mechanism drivers. By adding get_standard_device_mappings
    method SRIOV and OVS mechanism drivers can return a mapping dict in a
    form like this one:
    {'physnet_name': ['device_or_bridge_1', 'device_or_bridge_2']}

    Change-Id: Ieddd9b3a4f3d7269aafc373f040c55b025f5c201
    Related-Bug: #1578989

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

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

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

commit e78f82e64fbdc1feac6aaccb108aa5100b0f49ed
Author: Lajos Katona <email address hidden>
Date: Fri Jul 20 17:04:46 2018 +0200

    Fill port-resource-request

    port-resource-request is an admin-only, read-only attribute for neutron
    ports. The content of this field is filled from the QoS minimum
    bandwidth rule attached to the port.

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

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

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

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

commit ecfbc141480c41d1579b1d7fb205c55de2c6e9d6
Author: Lajos Katona <email address hidden>
Date: Thu Jan 3 14:27:33 2019 +0100

    port-resource-request policy rule to constant

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

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

Change abandoned by Lajos Katona (<email address hidden>) on branch: master
Review: https://review.openstack.org/625253
Reason: BAsed on discussion in neutron meeting (see: http://eavesdrop.openstack.org/irclogs/%23openstack-meeting/%23openstack-meeting.2018-12-18.log.html#t2018-12-18T15:17:17)
this test should be in tempest repo, as it will test nova and neutron functioality as well.

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

Reviewed: https://review.openstack.org/598423
Committed: https://git.openstack.org/cgit/openstack/neutron-tempest-plugin/commit/?id=2f90465f73c42dac3eaf7e70c666d44d286e1a4b
Submitter: Zuul
Branch: master

commit 2f90465f73c42dac3eaf7e70c666d44d286e1a4b
Author: Lajos Katona <email address hidden>
Date: Thu Aug 23 14:04:56 2018 +0200

    tests for port-resource-request

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

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

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

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

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)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

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

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

Reviewed: https://review.openstack.org/630662
Committed: https://git.openstack.org/cgit/openstack/neutron-tempest-plugin/commit/?id=7eb6725c80615dc0e2b46deb1f892f3af6a38d42
Submitter: Zuul
Branch: master

commit 7eb6725c80615dc0e2b46deb1f892f3af6a38d42
Author: Lajos Katona <email address hidden>
Date: Mon Jan 14 12:55:35 2019 +0100

    Make provider network creation more error proof

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

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

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

commit 5dcccd2c668a0ae62aa04a6a5f3e390fb56e0053
Author: Bence Romsics <email address hidden>
Date: Wed Dec 19 15:49:52 2018 +0100

    New agent attribute: resources_synced

    Agents supporting the guaranteed minimum bandwidth feature need to share
    their resource view with neutron-server and in turn with Placement too.
    The resource information is synchronized to neutron-server via the
    periodic agent heartbeat therefore transient synchronization errors are
    fixed by the next heartbeat. But synchronization to Placement is not
    done periodically, but on a (mostly) on demand basis. Therefore to fix
    transient errors of the synchronization to Placement we must remember
    the success/failure of the last synchronization attempt.

    This change introduces a new boolean agent attribute: resources_synced

    This attribute is:
    * admin-only (just like the whole agent extension)
    * read-only (it is only updated by the internal synchronization process)

    If this attribute is not set then no synchronization to Placement ever
    happened (which is the natural state of agents not tracking their
    resources via Placement).

    If it is False, then another successful synchronization is needed before
    the contents of Placement can be considered up to date.

    If it is True, then this agent's resources are up to date in Placement.

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

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)
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/635160

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

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

commit b71eaf4256a2887fa80b61760c633e0d5c37340c
Author: Bence Romsics <email address hidden>
Date: Wed Feb 6 14:53:22 2019 +0100

    Exceptions for: Drive binding by placement allocation

    New exception types used in https://review.openstack.org/574783.

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

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

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

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

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

commit facc4e94cae64b6c79cd4538e452e838436eac0f
Author: Bence Romsics <email address hidden>
Date: Mon Feb 11 14:47:31 2019 +0100

    Reject QoS minimum bandwidth rule updates for bound ports as NotImplemented

    Updating QoS policies and rules backed by resources tracked in Placement
    is a complex task, which was left out of scope for the Stein release.
    Of course this is only relevant for policies/rules already in use on
    bound ports. Rules of unbound ports can still be updated freely.

    Please note this patch cannot catch all possible problems. There will
    always be a time window between the allocation committed to Placement
    and Nova sending the port binding request to Neutron. If the policy or
    rule is changed in this window we cannot do anything against it.

    APIImpact: Reject QoS minimum bandwidth policy/rule updates for bound
               ports as NotImplemented

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

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

Reviewed: https://review.openstack.org/630999
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=648ab82a4bf07845b97c5cb62347fbde86cdc9d2
Submitter: Zuul
Branch: master

commit 648ab82a4bf07845b97c5cb62347fbde86cdc9d2
Author: Bence Romsics <email address hidden>
Date: Wed Dec 19 13:44:37 2018 +0100

    New agent attribute: resources_synced

    Agents supporting the guaranteed minimum bandwidth feature need to share
    their resource view with neutron-server and in turn with Placement too.
    The resource information is synchronized to neutron-server via the
    periodic agent heartbeat therefore transient synchronization errors are
    fixed by the next heartbeat. But synchronization to Placement is not
    done periodically, but on a (mostly) on demand basis. Therefore to fix
    transient errors of the synchronization to Placement we must remember
    the success/failure of the last synchronization attempt.

    This change implements the extension 'agent-resources-synced' and
    therefore extends the agent db model and object with a new attribute:
    'resources_synced'. This attribute in only meant to be updated
    internally. But it can be read via the API for debugging purposes.

    APIImpact: The agent resource has a new attribute: resources_synced.

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

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

Reviewed: https://review.openstack.org/588319
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=4ab00d347126127758e12112e081886bb112810d
Submitter: Zuul
Branch: master

commit 4ab00d347126127758e12112e081886bb112810d
Author: Bence Romsics <email address hidden>
Date: Thu Aug 2 10:28:43 2018 +0200

    Class to represent Placement state and sync

    Represent the desired state of the Placement DB and provide a method to
    sync this state to Placement. This is unused as is. A later patch in
    the same series is going to use it. But it is broken out into its own
    file and patch, so the code is organized better and easier to review.

    Change-Id: I3728117f90b7fad2423c2a4276db214ec86c9d8e
    Depends-On: https://review.openstack.org/570847
    Depends-On: https://review.openstack.org/577220
    Depends-On: https://review.openstack.org/616194
    Partial-Bug: #1578989
    See-Also: https://review.openstack.org/502306 (nova spec)
    See-Also: https://review.openstack.org/508149 (neutron spec)

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

Reviewed: https://review.openstack.org/580672
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=9e8e987e6c3d2fa753701689b9ff5d1227fb3c24
Submitter: Zuul
Branch: master

commit 9e8e987e6c3d2fa753701689b9ff5d1227fb3c24
Author: Bence Romsics <email address hidden>
Date: Fri Jul 6 16:02:15 2018 +0200

    Placement reporting service plugin

    This service plugin synchronizes ML2 mechanism driver agents' resource
    information to Placement. To use this service an agent must add
    'resource_provider_bandwidths' to the 'configurations' field of its
    RPC heartbeat. It also may add 'resource_provider_inventory_defaults'
    to fine tune Placement inventory parameters. Again to use this service a
    mechanism driver must implement get_standrd_device_mappings() and allocate
    a UUID as mechanism driver property 'resource_provider_uuid5_namespace'.

    The synchronization is triggered by:
    * any new agent object in the DB
    * restart of an agent (via 'start_flag' in the RPC heartbeat)
    * if an agent's 'resources_synced' attribute is not True (None/False)

    The latter should autoheal transient errors of the synchronization
    process. That is if a sync attemp fails then we store
    resources_synced=False which triggers a sync retry at each new heartbeat
    message until a sync attempt finally succeeds and we can set
    resources_synced=True.

    Since this code functionally depends on ML2 we can also consider making
    it part of ML2, but at the moment it is a service plugin for better
    decoupling. Even if you load the service plugin the logic gracefully
    degrades for heartbeat messages not containing resource provider info.

    If needed the sync can be forced in multiple ways. First, if you restart
    an agent then the RPs belonging to that agent will be re-synced. You may
    also delete the agent by 'openstack network agent delete' and let the
    next heartbeat message re-create the agent object. On re-creation the
    RPs belonging to that agent will be re-synced. On the other hand a
    neutron-server restart does not trigger a re-sync in any way. Depending
    on the trade-off between the admin's needs to force re-syncs and the
    performance of (not absolutely necessary) Placement updates re-sync
    conditions may be further fine tuned.

    Example config for neutron-server:

    neutron.conf:
    [DEFAULT]
    service_plugins = placement

    Change-Id: Ia1ff6f7559ab77913ddb9c3b134420a401b8eb43
    Co-Authored-By: Lajos Katona <email address hidden>
    Depends-On: https://review.openstack.org/586567
    Partial-Bug: #1578989
    See-Also: https://review.openstack.org/502306 (nova spec)
    See-Also: https://review.openstack.org/508149 (neutron spec)

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

Reviewed: https://review.openstack.org/574783
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=74c51a2e5390f258290ee890c9218beb5fdfd29c
Submitter: Zuul
Branch: master

commit 74c51a2e5390f258290ee890c9218beb5fdfd29c
Author: Bence Romsics <email address hidden>
Date: Tue Jun 26 11:16:54 2018 +0200

    Drive binding by placement allocation

    Drive the choice of mechanism driver during binding as inferred from
    the resource provider allocated by nova and as told to neutron via the
    port's binding:profile.

    As discussed on a neutron qos irc meeting some time ago
    this patch introduces a new assumption on bind_port() implementations.
    That is an implementation of bind_port() in any mech driver supporting
    Guaranteed Minimum Bandwidth bind_port() must not have a non-idempotent
    side effect. Because the last binding level will be redone for a 2nd
    time with a narrowed down list of mechanism drivers. And if the 2nd call
    does not give the same result as the first all kind of weird things can
    happen.

    Change-Id: I2b7573ec6795170ce45a13d5d0ad7844fb85182d
    Depends-On: https://review.openstack.org/574781
    Depends-On: https://review.openstack.org/635160
    Partial-Bug: #1578989
    See-Also: https://review.openstack.org/502306 (nova spec)
    See-Also: https://review.openstack.org/508149 (neutron spec)

Changed in neutron:
assignee: Slawek Kaplonski (slaweq) → Lajos Katona (lajos-katona)
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/642527

Akihiro Motoki (amotoki)
Changed in neutron:
milestone: none → stein-rc1
Changed in neutron:
assignee: Lajos Katona (lajos-katona) → Bence Romsics (bence-romsics)
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/645104

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

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

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

Reviewed: https://review.openstack.org/640390
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=252598b08827c0cd5e5c4174f84b4196c59f7493
Submitter: Zuul
Branch: master

commit 252598b08827c0cd5e5c4174f84b4196c59f7493
Author: Bence Romsics <email address hidden>
Date: Wed Feb 27 08:41:29 2019 +0100

    Networking guide: Guaranteed Minimum Bandwidth

    High-level overall and low-level neutron docs for the
    Guaranteed Minimum Bandwidth feature.

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

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

Reviewed: https://review.openstack.org/645104
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=7cccaf0616efe1f5b7d75d22ef0c3e1f7c649b16
Submitter: Zuul
Branch: master

commit 7cccaf0616efe1f5b7d75d22ef0c3e1f7c649b16
Author: Bence Romsics <email address hidden>
Date: Wed Mar 20 17:17:02 2019 +0100

    FUP Networking guide: Guaranteed Minimum Bandwidth

    Being so close to the rc1 deadline I didn't want to lose +2s of
    https://review.openstack.org/640390, so review comments are fixed here.

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

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

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

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

Reviewed: https://review.openstack.org/645210
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=3e008fd51b12a81c404870a7fb1d01f82363907b
Submitter: Zuul
Branch: master

commit 3e008fd51b12a81c404870a7fb1d01f82363907b
Author: Bence Romsics <email address hidden>
Date: Thu Mar 21 16:36:04 2019 +0100

    FUP: Unit tests for https://review.openstack.org/636970

    I forgot to add unit tests to the original change.
    This patch adds the missing unit tests.

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

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

Reviewed: https://review.openstack.org/631793
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=092c6d68511b43fd975f6fccc4a697488966ff5e
Submitter: Zuul
Branch: master

commit 092c6d68511b43fd975f6fccc4a697488966ff5e
Author: Lajos Katona <email address hidden>
Date: Wed Jan 16 16:36:55 2019 +0100

    Agent configuration bandwidth report change

    Fullstack test for checking if agent configuration field's
    resource_provider_bandwidths changes after configuration file change and
    agent restart.

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

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

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

commit 3ec5a22c762544ff2cf36fc7d1e0214cb285ea1a
Author: Lajos Katona <email address hidden>
Date: Thu Feb 7 13:26:14 2019 +0100

    Add noauth option for placement client

    To make possible the fullstack testing of bandwidth reporting towards
    placement and syncing of resources, we have to start a small process, a
    fake placement that can answer back placement REST API requests.
    For this we have to add a noauth client to bypass keystone in case of
    fullstack testing.

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

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

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

commit d4d2fbc30df45eadea724de8698023ec5ffbb6ba
Author: Lajos Katona <email address hidden>
Date: Mon Jan 21 10:44:18 2019 +0100

    Fullstack test for placement sync

    Fullstack test for placement reporter service plugin. To test it in
    fullstack environment a new stupid placement process is started which
    answers to placement REST API requests.

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

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

To post a comment you must log in.
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.