[RFE] Unify quota engine API

Bug #1953170 reported by Rodolfo Alonso
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
In Progress
Wishlist
Rodolfo Alonso

Bug Description

DESCRIPTION
-----------
In sake of simplicity, Neutron should adopt the same quota API behaviour as Nova and Cinder. Current behaviour when a new quota limit is set:
1) Neutron:
   $ openstack quota set --network 100 <project>
     # Quota is set WITHOUT checking the current network usage.

   $ openstack quota set --network 100 --check-limit <project>
     # Quota is set AFTER checking the current network usage.

2) Nova: (just the opposite)
   $ openstack quota set --ram 100 <project>
     # Quota is set AFTER checking the current network usage.

   $ openstack quota set --ram 100 --force <project>
     # Quota is set WITHOUT checking the current network usage.

That means Neutron forces by default the quota update while in Nova you need to specify the "--force" parameter.

The goal of this RFE is to plan a smooth migration to the Nova quota API behaviour: by default, always check the resource limit; if "--force" is provided, no check will be done.

STEPS
-----
1) Implement in OSC both "--force" and "--check-limit" parameters for "quota set" command. The "--force" parameter is already present. "--check-limit" will be merged in [1]. The functionality in Neutron quota system to check the resource usage is merged in Neutron [2]. This step can be considered as DONE.

2) Modify the quota engine to accept "--force" parameter. We'll discard it because this is the default behaviour.

3) Write a warning message in the logs. If no parameter is passed (force, check-limit), that means the user is using the "old" API. In this case, we'll inform in this message about the future change we'll make in the API (with references to this LP bug).

4) In 2 or 3 releases, change the behaviour in the Neutron quota engine: by default, we'll always check the resource limits. Remove the warning message.

5) Remove from OSC the parameter "--check-limit" (unnecessary now).

6) Remove from Neutron quota engine the "--check-limit" input parameter.

[1]https://review.opendev.org/c/openstack/python-openstackclient/+/806016
[2]https://review.opendev.org/c/openstack/neutron/+/801470

Changed in neutron:
importance: Undecided → Wishlist
assignee: nobody → Rodolfo Alonso (rodolfo-alonso-hernandez)
Akihiro Motoki (amotoki)
tags: added: rfe
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/+/821190

Changed in neutron:
status: New → In Progress
tags: added: rfe-approved
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

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

commit 8a9b9211d15a5f2ffe2b0ed42ccfc6fe8764753a
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Thu Dec 9 09:21:19 2021 +0000

    Quota engine to accept --force parameter in limit update

    Neutron quota engine now accepts "--force" parameter in quota limit
    update command. This is currently the default behaviour: the quota
    engine does not check the resource usage before updating the quota
    limit.

    However, this is an intermediate step before changing the quota engine
    behaviour. In Z+ (the exact release is not defined yet), the quota
    engine will requiere "--force" parameter to set a quota limit regarless
    of the resource usage. By default, the engine will check it.

    Partial-Bug: #1953170
    Change-Id: Ic1132a731f02109233fb80937791cbe7bc3ca0c5

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

Other bug subscribers

Remote bug watches

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