3b69f959a8
Local API and DB limits are limits on resources that are counted either as an API request parameter (example: server metadata items) or as records in the database (example: server key pairs). Future patches will make use of this logic, and actually enforce the limits. This patch just adds the infrastructure to allow for the enforcement of the limits. We are moving all existing quotas to be managed via Keystone's unified limits. To stop confusion between injected_file_path_length and injected_file_path_bytes, the unified limit in Keystone will use the latter name to match the name used the API. These local limits are all about preventing excessive load on the API and database and have little to do with resource usage. These limits are represented by keystone registered limits only, accordingly. Local limits include things that just limit items in an API request: * metadata_items * injected_files * injected_file_content_bytes * injected_file_path_bytes Local limits also include things that are stored in the database: * key_pairs * server_groups * server_group_members Some resource names have been changed to prepend a prefix of "server_" in order to disambiguate them from other potential unified limits in keystone: * metadata_items => server_metadata_items * injected_files => server_injected_files * injected_file_content_bytes => server_injected_file_content_bytes * injected_file_path_bytes => server_injected_file_path_bytes * key_pairs => server_key_pairs Note that each of the above are counted via a different scope. This new code ensures that key_pairs are counted per user, server_groups are counted per project and server_group_members are counted per server_group. Note: Previously server_group_member were counted per user inside each server_group, which has proved very confusing, as adding more users into a project increases the maximum size of allowed for a server_group. blueprint unified-limits-nova Change-Id: I0b6f4d29aaee1d71541a95cbecfd0708aac325d2
66 lines
1.9 KiB
Plaintext
66 lines
1.9 KiB
Plaintext
pbr>=5.8.0 # Apache-2.0
|
|
SQLAlchemy>=1.4.13 # MIT
|
|
decorator>=4.1.0 # BSD
|
|
eventlet>=0.30.1 # MIT
|
|
Jinja2>=2.10 # BSD License (3 clause)
|
|
keystonemiddleware>=4.20.0 # Apache-2.0
|
|
lxml>=4.5.0 # BSD
|
|
Routes>=2.3.1 # MIT
|
|
cryptography>=2.7 # BSD/Apache-2.0
|
|
WebOb>=1.8.2 # MIT
|
|
greenlet>=0.4.15 # MIT
|
|
PasteDeploy>=1.5.0 # MIT
|
|
Paste>=2.0.2 # MIT
|
|
PrettyTable>=0.7.1 # BSD
|
|
sqlalchemy-migrate>=0.13.0 # Apache-2.0
|
|
alembic>=1.5.0 # MIT
|
|
netaddr>=0.7.18 # BSD
|
|
netifaces>=0.10.4 # MIT
|
|
paramiko>=2.7.1 # LGPLv2.1+
|
|
iso8601>=0.1.11 # MIT
|
|
jsonschema>=3.2.0 # MIT
|
|
python-cinderclient!=4.0.0,>=3.3.0 # Apache-2.0
|
|
keystoneauth1>=3.16.0 # Apache-2.0
|
|
python-neutronclient>=7.1.0 # Apache-2.0
|
|
python-glanceclient>=2.8.0 # Apache-2.0
|
|
requests>=2.25.1 # Apache-2.0
|
|
stevedore>=1.20.0 # Apache-2.0
|
|
websockify>=0.9.0 # LGPLv3
|
|
oslo.cache>=1.26.0 # Apache-2.0
|
|
oslo.concurrency>=4.5.0 # Apache-2.0
|
|
oslo.config>=8.6.0 # Apache-2.0
|
|
oslo.context>=3.4.0 # Apache-2.0
|
|
oslo.log>=4.6.1 # Apache-2.0
|
|
oslo.limit>=1.5.0 # Apache-2.0
|
|
oslo.reports>=1.18.0 # Apache-2.0
|
|
oslo.serialization>=4.2.0 # Apache-2.0
|
|
oslo.upgradecheck>=1.3.0
|
|
oslo.utils>=4.12.1 # Apache-2.0
|
|
oslo.db>=10.0.0 # Apache-2.0
|
|
oslo.rootwrap>=5.8.0 # Apache-2.0
|
|
oslo.messaging>=10.3.0 # Apache-2.0
|
|
oslo.policy>=3.7.0 # Apache-2.0
|
|
oslo.privsep>=2.6.2 # Apache-2.0
|
|
oslo.i18n>=5.1.0 # Apache-2.0
|
|
oslo.service>=2.8.0 # Apache-2.0
|
|
rfc3986>=1.2.0 # Apache-2.0
|
|
oslo.middleware>=3.31.0 # Apache-2.0
|
|
psutil>=3.2.2 # BSD
|
|
oslo.versionedobjects>=1.35.0 # Apache-2.0
|
|
os-brick>=5.2 # Apache-2.0
|
|
os-resource-classes>=1.1.0 # Apache-2.0
|
|
os-traits>=2.7.0 # Apache-2.0
|
|
os-vif>=1.15.2 # Apache-2.0
|
|
castellan>=0.16.0 # Apache-2.0
|
|
microversion-parse>=0.2.1 # Apache-2.0
|
|
tooz>=1.58.0 # Apache-2.0
|
|
cursive>=0.2.1 # Apache-2.0
|
|
retrying>=1.3.3,!=1.3.0 # Apache-2.0
|
|
os-service-types>=1.7.0 # Apache-2.0
|
|
taskflow>=3.8.0 # Apache-2.0
|
|
python-dateutil>=2.7.0 # BSD
|
|
futurist>=1.8.0 # Apache-2.0
|
|
openstacksdk>=0.35.0 # Apache-2.0
|
|
dataclasses>=0.7;python_version=='3.6' # Apache 2.0 License
|
|
PyYAML>=5.1 # MIT
|