Files
openstack-manuals/doc/user-guide-admin/source/cli_set_compute_quotas.rst
Andreas Jaeger 21d93118f0 Avoid really overlooooooooong lines in RST
We aim to have no lines longer than 79 characters, enable the line
checking niceness check but set it to 100 as current maximum.

Convert files that fail this line length.

Convert one table to a definition list, convert two tables to use
list-table directive.

Change-Id: I8d0a95cc1c8e72965b3e0e69445e7b2bc6d77f0f
2015-06-12 19:28:23 +02:00

9.0 KiB

Manage Compute service quotas

As an administrative user, you can use the nova quota-* commands, which are provided by the python-novaclient package, to update the Compute service quotas for a specific tenant or tenant user, as well as update the quota defaults for a new tenant.

Compute quota descriptions

Quota name Description

cores

Number of instance cores (VCPUs) allowed per tenant.

fixed-ips

Number of fixed IP addresses allowed per tenant. This number must be equal to or greater than the number of allowed instances.

floating-ips

Number of floating IP addresses allowed per tenant.

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 tenant.

instances

Number of instances allowed per tenant.

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 tenant.

security-groups

Number of security groups per tenant.

security-group-rules

Number of rules per security group.

View and update Compute quotas for a tenant (project)

To view and update default quota values

  1. List all default quotas for all tenants, as follows:

    $ nova quota-defaults

    For example:

    $ nova quota-defaults
    +-----------------------------+-------+
    | 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    |
    +-----------------------------+-------+
  2. Update a default value for a new tenant, as follows:

    $ nova quota-class-update --KEY VALUE default

    For example:

    $ nova quota-class-update --instances 15 default

To view quota values for an existing tenant (project)

  1. Place the tenant ID in a usable variable, as follows:

    $ tenant=$(keystone tenant-list | awk '/TENANT_NAME/ {print $2}')
  2. List the currently set quota values for a tenant, as follows:

    $ nova quota-show --tenant $tenant

    For example:

    $ nova quota-show --tenant $tenant
    +-----------------------------+-------+
    | 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    |
    +-----------------------------+-------+

To update quota values for an existing tenant (project)

  1. Obtain the tenant ID, as follows:

    $ tenant=$(keystone tenant-list | awk '/TENANT_NAME/ {print $2}')
  2. Update a particular quota value, as follows:

    $ nova quota-update --QUOTA_NAME QUOTA_VALUE TENANT_ID

    For example:

    $ nova quota-update --floating-ips 20 $tenant
    $ nova quota-show --tenant $tenant
    +-----------------------------+-------+
    | 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    |
    +-----------------------------+-------+

    Note

    To view a list of options for the quota-update command, run:

    $ nova help quota-update

View and update Compute quotas for a tenant user

To view quota values for a tenant user

  1. Place the user ID in a usable variable, as follows:

    $ tenantUser=$(keystone user-list | awk '/USER_NAME/ {print $2}')
  2. Place the user's tenant ID in a usable variable, as follows:

    $ tenant=$(keystone tenant-list | awk '/TENANT_NAME/ {print $2}')
  3. List the currently set quota values for a tenant user, as follows:

    $ nova quota-show --user $tenantUser --tenant $tenant

    For example:

    $ nova quota-show --user $tenantUser --tenant $tenant
    +-----------------------------+-------+
    | 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    |
    +-----------------------------+-------+

To update quota values for a tenant user

  1. Place the user ID in a usable variable, as follows:

    $ tenantUser=$(keystone user-list | awk '/USER_NAME/ {print $2}')
  2. Place the user's tenant ID in a usable variable, as follows:

    $ tenant=$(keystone tenant-list | awk '/USER_NAME/ {print $2}')
  3. Update a particular quota value, as follows:

    $ nova quota-update  --user $tenantUser --QUOTA_NAME QUOTA_VALUE $tenant

    For example:

    $ nova quota-update --user $tenantUser --floating-ips 12 $tenant
    $ nova quota-show --user $tenantUser --tenant $tenant
    +-----------------------------+-------+
    | 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    |
    +-----------------------------+-------+

    Note

    To view a list of options for the quota-update command, run:

    $ nova help quota-update

To display the current quota usage for a tenant user

Use nova absolute-limits to get a list of the current quota values and the current quota usage:

$ nova absolute-limits --tenant TENANT_NAME
 +-------------------------+-------+
 | Name                    | Value |
 +-------------------------+-------+
 | maxServerMeta           | 128   |
 | maxPersonality          | 5     |
 | maxImageMeta            | 128   |
 | maxPersonalitySize      | 10240 |
 | maxTotalRAMSize         | 51200 |
 | maxSecurityGroupRules   | 20    |
 | maxTotalKeypairs        | 100   |
 | totalRAMUsed            | 0     |
 | maxSecurityGroups       | 10    |
 | totalFloatingIpsUsed    | 0     |
 | totalInstancesUsed      | 0     |
 | totalSecurityGroupsUsed | 0     |
 | maxTotalFloatingIps     | 10    |
 | maxTotalInstances       | 10    |
 | totalCoresUsed          | 0     |
 | maxTotalCores           | 20    |
 +-------------------------+-------+