As an administrative user, you can use the nova quota-* commands,which are provided by the python-novaclient
package, to update the Computeservice quotas for a specific project or project user, as well as update thequota defaults for a new project.
Todo
At some point, probably in Queens, we need to scrub this page and mentionthe microversions that remove the proxy and network-related resource quotas.
Compute quota descriptions
Quota name | Description |
---|---|
cores | Number of instance cores (VCPUs) allowed per project. |
fixed-ips | Number of fixed IP addresses allowed per project. This numbermust be equal to or greater than the number of allowedinstances. |
floating-ips | Number of floating IP addresses allowed per project. |
injected-file-content-bytes | Number of content bytes allowed per injected file. |
injected-file-path-bytes | Length of injected file path. |
injected-files | Number of injected files allowed per project. |
instances | Number of instances allowed per project. |
key-pairs | Number of key pairs allowed per user. |
metadata-items | Number of metadata items allowed per instance. |
ram | Megabytes of instance ram allowed per project. |
security-groups | Number of security groups per project. |
security-group-rules | Number of security group rules per project. |
server-groups | Number of server groups per project. |
server-group-members | Number of servers per server group. |
View and update Compute quotas for a project¶
To view and update default quota values¶
List all default quotas for all projects:
$ openstack quota show --default+-----------------------------+-------+| Quota | Limit |+-----------------------------+-------+| instances | 10 || cores | 20 || ram | 51200 || floating_ips | 10 || fixed_ips | -1 || metadata_items | 128 || injected_files | 5 || injected_file_content_bytes | 10240 || injected_file_path_bytes | 255 || key_pairs | 100 || security_groups | 10 || security_group_rules | 20 || server_groups | 10 || server_group_members | 10 |+-----------------------------+-------+
Update a default value for a new project, for example:
$ openstack quota set --instances 15 default
To view quota values for an existing project¶
List the currently set quota values for a project:
See AlsoWhat Is a Quota?Check Disk Quota and UsageOpenStack Docs: OpenStack services loggingQuotas: Example, Types & Difference$ openstack quota show PROJECT_NAME+-----------------------------+-------+| Quota | Limit |+-----------------------------+-------+| instances | 10 || cores | 20 || ram | 51200 || floating_ips | 10 || fixed_ips | -1 || metadata_items | 128 || injected_files | 5 || injected_file_content_bytes | 10240 || injected_file_path_bytes | 255 || key_pairs | 100 || security_groups | 10 || security_group_rules | 20 || server_groups | 10 || server_group_members | 10 |+-----------------------------+-------+
To update quota values for an existing project¶
Obtain the project ID.
$ project=$(openstack project show -f value -c id PROJECT_NAME)
Update a particular quota value.
$ openstack quota set --QUOTA_NAME QUOTA_VALUE PROJECT_OR_CLASS
For example:
$ openstack quota set --floating-ips 20 PROJECT_OR_CLASS$ openstack quota show PROJECT_NAME+-----------------------------+-------+| Quota | Limit |+-----------------------------+-------+| instances | 10 || cores | 20 || ram | 51200 || floating_ips | 20 || fixed_ips | -1 || metadata_items | 128 || injected_files | 5 || injected_file_content_bytes | 10240 || injected_file_path_bytes | 255 || key_pairs | 100 || security_groups | 10 || security_group_rules | 20 || server_groups | 10 || server_group_members | 10 |+-----------------------------+-------+
Note
To view a list of options for the openstack quota set command,run:
$ openstack help quota set
View and update Compute quotas for a project user¶
To view quota values for a project user¶
Place the user ID in a usable variable.
$ projectUser=$(openstack user show -f value -c id USER_NAME)
Place the user's project ID in a usable variable, as follows:
$ project=$(openstack project show -f value -c id PROJECT_NAME)
List the currently set quota values for a project user.
$ nova quota-show --user $projectUser --tenant $project
For example:
$ nova quota-show --user $projecUser --tenant $project+-----------------------------+-------+| Quota | Limit |+-----------------------------+-------+| instances | 10 || cores | 20 || ram | 51200 || floating_ips | 20 || fixed_ips | -1 || metadata_items | 128 || injected_files | 5 || injected_file_content_bytes | 10240 || injected_file_path_bytes | 255 || key_pairs | 100 || security_groups | 10 || security_group_rules | 20 || server_groups | 10 || server_group_members | 10 |+-----------------------------+-------+
To update quota values for a project user¶
Place the user ID in a usable variable.
$ projectUser=$(openstack user show -f value -c id USER_NAME)
Place the user's project ID in a usable variable, as follows:
$ project=$(openstack project show -f value -c id PROJECT_NAME)
Update a particular quota value, as follows:
$ nova quota-update --user $projectUser --QUOTA_NAME QUOTA_VALUE $project
For example:
$ nova quota-update --user $projectUser --floating-ips 12 $project$ nova quota-show --user $projectUser --tenant $project+-----------------------------+-------+| Quota | Limit |+-----------------------------+-------+| instances | 10 || cores | 20 || ram | 51200 || floating_ips | 12 || fixed_ips | -1 || metadata_items | 128 || injected_files | 5 || injected_file_content_bytes | 10240 || injected_file_path_bytes | 255 || key_pairs | 100 || security_groups | 10 || security_group_rules | 20 || server_groups | 10 || server_group_members | 10 |+-----------------------------+-------+
Note
To view a list of options for the nova quota-update command,run:
$ nova help quota-update
To display the current quota usage for a project user¶
Use nova limits to get a list of thecurrent quota values and the current quota usage:
$ nova limits --tenant PROJET_NAME+------+-----+-------+--------+------+----------------+| Verb | URI | Value | Remain | Unit | Next_Available |+------+-----+-------+--------+------+----------------++------+-----+-------+--------+------+----------------++--------------------+------+-------+| Name | Used | Max |+--------------------+------+-------+| Cores | 0 | 20 || Instances | 0 | 10 || Keypairs | - | 100 || Personality | - | 5 || Personality Size | - | 10240 || RAM | 0 | 51200 || Server Meta | - | 128 || ServerGroupMembers | - | 10 || ServerGroups | 0 | 10 |+--------------------+------+-------+
Note
The nova limits command generates an emptytable as a result of the Compute API, which prints anempty list for backward compatibility purposes.