Validate Unified Limits Scenario #1 # Strategy Require List None [zuul@controller-0 ~]$ oc rsh -c nova-api-api nova-api-0 cat /etc/nova/nova.conf.d/02-nova-override.conf [quota] driver = nova.quota.UnifiedLimitsDriver unified_limits_resource_strategy = require unified_limits_resource_list= [oslo_limit] auth_url = https://keystone-public-openstack.apps.ocp.openstack.lab auth_type = password user_domain_name = Default username = nova valid_interfaces = internal password = 12345678 endpoint_id = c1c230ebf60c4f4b986ceeb1f4a77ba5 system_scope=all # Verified via automation: {0} tempest.scenario.test_compute_unified_limits.ServersQuotaTest.test_server_count_vcpu_memory_disk_quota [71.791713s] ... ok ====== Totals ====== Ran: 1 tests in 71.7917 sec. - Passed: 1 - Skipped: 0 - Expected Fail: 0 - Unexpected Success: 0 - Failed: 0 Sum of execute time for each test: 71.7917 sec. # ENV setup in openstackclient: sh-5.1$ env | grep -i cloud OS_CLOUD=default PWD=/home/cloud-admin HOME=/home/cloud-admin sh-5.1$ unset OS_CLOUD sh-5.1$ export cli_creds='--os-username admin --os-project-name demo --os-auth-url https://keystone-public-openstack.apps.ocp.openstack.lab --os-password 12345678 --os-domain-name default' # Test Registered Limits Only # Create Registered Limits sh-5.1$ openstack registered limit create --service nova --default-limit -1 servers --region regionOne +---------------+----------------------------------+ | Field | Value | +---------------+----------------------------------+ | default_limit | -1 | | description | None | | id | 3bfd22466f204b8ba31d2be52dd776c7 | | region_id | None | | resource_name | servers | | service_id | cf9ffaabb42247839578f36963223ff9 | +---------------+----------------------------------+ sh-5.1$ openstack registered limit create --service nova --default-limit -1 class:VCPU --region regionOne +---------------+----------------------------------+ | Field | Value | +---------------+----------------------------------+ | default_limit | -1 | | description | None | | id | 44422e1102984778a3283e5c0cd70fc1 | | region_id | None | | resource_name | class:VCPU | | service_id | cf9ffaabb42247839578f36963223ff9 | +---------------+----------------------------------+ sh-5.1$ openstack registered limit create --service nova --default-limit -1 class:DISK_GB --region regionOne +---------------+----------------------------------+ | Field | Value | +---------------+----------------------------------+ | default_limit | -1 | | description | None | | id | dc831369f86a4d95888e62accc68e22a | | region_id | None | | resource_name | class:DISK_GB | | service_id | cf9ffaabb42247839578f36963223ff9 | +---------------+----------------------------------+ sh-5.1$ openstack registered limit create --service nova --default-limit -1 class:MEMORY_MB --region regionOne +---------------+----------------------------------+ | Field | Value | +---------------+----------------------------------+ | default_limit | -1 | | description | None | | id | ee7daf72d1a340b2bbfd3e4008c35df8 | | region_id | None | | resource_name | class:MEMORY_MB | | service_id | cf9ffaabb42247839578f36963223ff9 | +---------------+----------------------------------+ sh-5.1$ openstack role add --user nova --user-domain default --system all reader sh-5.1$ openstack registered limit list --service nova +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ | ID | Service ID | Resource Name | Default Limit | Description | Region ID | +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ | 3bfd22466f204b8ba31d2be52dd776c7 | cf9ffaabb42247839578f36963223ff9 | servers | -1 | None | regionOne | | 44422e1102984778a3283e5c0cd70fc1 | cf9ffaabb42247839578f36963223ff9 | class:VCPU | -1 | None | regionOne | | dc831369f86a4d95888e62accc68e22a | cf9ffaabb42247839578f36963223ff9 | class:DISK_GB | -1 | None | regionOne | | ee7daf72d1a340b2bbfd3e4008c35df8 | cf9ffaabb42247839578f36963223ff9 | class:MEMORY_MB | -1 | None | regionOne | +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ # Update Registered Limits sh-5.1$ openstack registered limit set --default-limit 2 c35deea6185343d9872f2f470e693466 +---------------+----------------------------------+ | Field | Value | +---------------+----------------------------------+ | default_limit | 2 | | description | None | | id | c35deea6185343d9872f2f470e693466 | | region_id | regionOne | | resource_name | class:VCPU | | service_id | cf9ffaabb42247839578f36963223ff9 | +---------------+----------------------------------+ sh-5.1$ openstack registered limit list +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ | ID | Service ID | Resource Name | Default Limit | Description | Region ID | +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ | c11c58b87c1f46c5aaa8c83ccd5f948d | cf9ffaabb42247839578f36963223ff9 | servers | -1 | None | regionOne | | c35deea6185343d9872f2f470e693466 | cf9ffaabb42247839578f36963223ff9 | class:VCPU | 2 | None | regionOne | | ff7580e317e945579f7f82db715be0e8 | cf9ffaabb42247839578f36963223ff9 | class:DISK_GB | -1 | None | regionOne | | b151bad82f1a44efb8eb3c0bf1234969 | cf9ffaabb42247839578f36963223ff9 | class:MEMORY_MB | -1 | None | regionOne | +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ # Batch server creation check: sh-5.1$ openstack server create --image cirros-0.6.2-x86_64-disk.img --flavor m1.micro --min 3 --max 3 test-vm --wait Project c9ffcbb2f24e4a2a864c7ee4659cd01e is over a limit for [Resource class:DISK_GB is over limit of -1 due to current usage 0 and delta 3, Resource class:MEMORY_MB is over limit of -1 due to current usage 0 and delta 576, Resource class:VCPU is over limit of 2 due to current usage 0 and delta 3, Resource servers is over limit of -1 due to current usage 0 and delta 3] (HTTP 403) (Request-ID: req-c068d7a1-7abf-45e5-8005-3703c092c35d) sh-5.1$ openstack server list --all sh-5.1$ # Single VM creation calls sh-5.1$ openstack server list --all sh-5.1$ openstack server create --image cirros-0.6.2-x86_64-disk.img --flavor m1.micro test-vm --wait ... sh-5.1$ openstack server create --image cirros-0.6.2-x86_64-disk.img --flavor m1.micro test-vm-01 --wait ... sh-5.1$ openstack server create --image cirros-0.6.2-x86_64-disk.img --flavor m1.micro test-vm-02 --wait Project c9ffcbb2f24e4a2a864c7ee4659cd01e is over a limit for [Resource class:DISK_GB is over limit of -1 due to current usage 2 and delta 1, Resource class:MEMORY_MB is over limit of -1 due to current usage 384 and delta 192, Resource class:VCPU is over limit of 2 due to current usage 2 and delta 1, Resource servers is over limit of -1 due to current usage 2 and delta 1] (HTTP 403) (Request-ID: req-201f3f79-f20c-40f5-a366-58722a652927) sh-5.1$ openstack server list --all +--------------------------------------+------------+--------+------------------------+------------------------------+----------+ | ID | Name | Status | Networks | Image | Flavor | +--------------------------------------+------------+--------+------------------------+------------------------------+----------+ | 614e5e85-5d48-4224-a11e-7a0dfc10feff | test-vm-01 | ACTIVE | public=192.168.122.226 | cirros-0.6.2-x86_64-disk.img | m1.micro | | 798c1b19-db33-48e0-ae01-ece2d0c0fd2e | test-vm | ACTIVE | public=192.168.122.217 | cirros-0.6.2-x86_64-disk.img | m1.micro | +--------------------------------------+------------+--------+------------------------+------------------------------+----------+ # Test Project Precedence 1 over Registered limits -1 sh-5.1$ openstack limit create --service nova --project demo --resource-limit 1 servers --region regionOne +----------------+----------------------------------+ | Field | Value | +----------------+----------------------------------+ | description | None | | domain_id | None | | id | dd4bf2e226e341bebe64cbaf1f22f025 | | project_id | 6d141db651f449cca058142815844bbe | | region_id | regionOne | | resource_limit | 1 | | resource_name | servers | | service_id | cf9ffaabb42247839578f36963223ff9 | +----------------+----------------------------------+ sh-5.1$ openstack --os-username admin --os-project-name demo --os-auth-url https://keystone-public-openstack.apps.ocp.openstack.lab --os-password 12345678 --os-domain-name default limit list --region regionOne +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ | ID | Project ID | Service ID | Resource Name | Resource Limit | Description | Region ID | +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ | dd4bf2e226e341bebe64cbaf1f22f025 | 6d141db651f449cca058142815844bbe | cf9ffaabb42247839578f36963223ff9 | servers | 1 | None | regionOne | +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ sh-5.1$ openstack $cli_creds server create --image cirros-0.6.2-x86_64-disk.img --flavor 8386f658-dffc-4ebb-9ca6-1c1d5eb2e8ca test-vm-1 +-------------------------------------+---------------------------------------------------------------------+ | Field | Value | +-------------------------------------+---------------------------------------------------------------------+ | OS-DCF:diskConfig | MANUAL | | OS-EXT-AZ:availability_zone | | | OS-EXT-SRV-ATTR:host | None | | OS-EXT-SRV-ATTR:hypervisor_hostname | None | | OS-EXT-SRV-ATTR:instance_name | | | OS-EXT-STS:power_state | NOSTATE | | OS-EXT-STS:task_state | scheduling | | OS-EXT-STS:vm_state | building | | OS-SRV-USG:launched_at | None | | OS-SRV-USG:terminated_at | None | | accessIPv4 | | | accessIPv6 | | | addresses | | | adminPass | EbZrYZ932gGB | | config_drive | | | created | 2025-02-03T22:23:55Z | | flavor | m1.nano (8386f658-dffc-4ebb-9ca6-1c1d5eb2e8ca) | | hostId | | | id | bfbb239b-182f-4435-8420-a5cfd55c1825 | | image | cirros-0.6.2-x86_64-disk.img (dd5526a0-2c95-4646-90c9-0c27fa7143fe) | | key_name | None | | name | test-vm-1 | | progress | 0 | | project_id | 6d141db651f449cca058142815844bbe | | properties | | | security_groups | name='default' | | status | BUILD | | updated | 2025-02-03T22:23:55Z | | user_id | b587a33b3d7d4f899cb1769a2c97c2a7 | | volumes_attached | | +-------------------------------------+---------------------------------------------------------------------+ ### Create second server sh-5.1$ openstack $cli_creds server create --image cirros-0.6.2-x86_64-disk.img --flavor 8386f658-dffc-4ebb-9ca6-1c1d5eb2e8ca test-vm-2 Project 6d141db651f449cca058142815844bbe is over a limit for [Resource class:DISK_GB is over limit of -1 due to current usage 1 and delta 1, Resource class:MEMORY_MB is over limit of -1 due to current usage 128 and delta 128, Resource class:VCPU is over limit of -1 due to current usage 1 and delta 1, Resource servers is over limit of 1 due to current usage 1 and delta 1] (HTTP 403) (Request-ID: req-848c0a87-f07e-4aaa-99bb-bc3b56ad1401) # Test Project Precedence: VCPU Limit -1 VCPU Registered limits 2 sh-5.1$ openstack registered limit list +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ | ID | Service ID | Resource Name | Default Limit | Description | Region ID | +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ | c11c58b87c1f46c5aaa8c83ccd5f948d | cf9ffaabb42247839578f36963223ff9 | servers | -1 | None | regionOne | | c35deea6185343d9872f2f470e693466 | cf9ffaabb42247839578f36963223ff9 | class:VCPU | 2 | None | regionOne | | ff7580e317e945579f7f82db715be0e8 | cf9ffaabb42247839578f36963223ff9 | class:DISK_GB | -1 | None | regionOne | | b151bad82f1a44efb8eb3c0bf1234969 | cf9ffaabb42247839578f36963223ff9 | class:MEMORY_MB | -1 | None | regionOne | +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ sh-5.1$ openstack $cli_creds limit list +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ | ID | Project ID | Service ID | Resource Name | Resource Limit | Description | Region ID | +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ | dd4bf2e226e341bebe64cbaf1f22f025 | 6d141db651f449cca058142815844bbe | cf9ffaabb42247839578f36963223ff9 | servers | 1 | None | regionOne | +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ sh-5.1$ openstack $cli_creds limit set --resource-limit -1 dd4bf2e226e341bebe64cbaf1f22f025 +----------------+----------------------------------+ | Field | Value | +----------------+----------------------------------+ | description | None | | domain_id | None | | id | dd4bf2e226e341bebe64cbaf1f22f025 | | project_id | 6d141db651f449cca058142815844bbe | | region_id | regionOne | | resource_limit | -1 | | resource_name | servers | | service_id | cf9ffaabb42247839578f36963223ff9 | +----------------+----------------------------------+ sh-5.1$ openstack $cli_creds limit create --service nova --project demo --resource-limit -1 class:VCPU --region regionOne +----------------+----------------------------------+ | Field | Value | +----------------+----------------------------------+ | description | None | | domain_id | None | | id | 75f7ebe455e3461bb80bb585bd9558ae | | project_id | 6d141db651f449cca058142815844bbe | | region_id | regionOne | | resource_limit | -1 | | resource_name | class:VCPU | | service_id | cf9ffaabb42247839578f36963223ff9 | +----------------+----------------------------------+ sh-5.1$ openstack $cli_creds limit list +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ | ID | Project ID | Service ID | Resource Name | Resource Limit | Description | Region ID | +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ | dd4bf2e226e341bebe64cbaf1f22f025 | 6d141db651f449cca058142815844bbe | cf9ffaabb42247839578f36963223ff9 | servers | -1 | None | regionOne | | 75f7ebe455e3461bb80bb585bd9558ae | 6d141db651f449cca058142815844bbe | cf9ffaabb42247839578f36963223ff9 | class:VCPU | -1 | None | regionOne | +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ sh-5.1$ openstack $cli_creds server create --image cirros-0.6.2-x86_64-disk.img --flavor 8386f658-dffc-4ebb-9ca6-1c1d5eb2e8ca --min 3 --max 3 test-vm --wait ... sh-5.1$ openstack $cli_creds server list +--------------------------------------+-----------+--------+----------+------------------------------+---------+ | ID | Name | Status | Networks | Image | Flavor | +--------------------------------------+-----------+--------+----------+------------------------------+---------+ | 333cdaa8-40ee-47a0-b10e-aeaa9a77c123 | test-vm-1 | ACTIVE | | cirros-0.6.2-x86_64-disk.img | m1.nano | | 5758c571-2759-4cfb-a5b7-adc4ba4bc476 | test-vm-2 | ACTIVE | | cirros-0.6.2-x86_64-disk.img | m1.nano | | f2c7f008-d533-4b7f-9957-0642d674de4a | test-vm-3 | ACTIVE | | cirros-0.6.2-x86_64-disk.img | m1.nano | +--------------------------------------+-----------+--------+----------+------------------------------+---------+ # Test Project Precedence: VCPU Limit 2 VCPU Registered limits -1 ### Update Registered Limit sh-5.1$ openstack registered limit list +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ | ID | Service ID | Resource Name | Default Limit | Description | Region ID | +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ | c11c58b87c1f46c5aaa8c83ccd5f948d | cf9ffaabb42247839578f36963223ff9 | servers | -1 | None | regionOne | | c35deea6185343d9872f2f470e693466 | cf9ffaabb42247839578f36963223ff9 | class:VCPU | 2 | None | regionOne | | ff7580e317e945579f7f82db715be0e8 | cf9ffaabb42247839578f36963223ff9 | class:DISK_GB | -1 | None | regionOne | | b151bad82f1a44efb8eb3c0bf1234969 | cf9ffaabb42247839578f36963223ff9 | class:MEMORY_MB | -1 | None | regionOne | +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ openstack registered limit set --default-limit -1 c35deea6185343d9872f2f470e693466 sh-5.1$ openstack registered limit list +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ | ID | Service ID | Resource Name | Default Limit | Description | Region ID | +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ | c11c58b87c1f46c5aaa8c83ccd5f948d | cf9ffaabb42247839578f36963223ff9 | servers | -1 | None | regionOne | | c35deea6185343d9872f2f470e693466 | cf9ffaabb42247839578f36963223ff9 | class:VCPU | -1 | None | regionOne | | ff7580e317e945579f7f82db715be0e8 | cf9ffaabb42247839578f36963223ff9 | class:DISK_GB | -1 | None | regionOne | | b151bad82f1a44efb8eb3c0bf1234969 | cf9ffaabb42247839578f36963223ff9 | class:MEMORY_MB | -1 | None | regionOne | +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ ### Create limit sh-5.1$ openstack $cli_creds limit create --service nova --project demo --resource-limit 2 class:VCPU --region regionOne +----------------+----------------------------------+ | Field | Value | +----------------+----------------------------------+ | description | None | | domain_id | None | | id | 21fe14d718fd44c9a1f6cfea26afa435 | | project_id | 6d141db651f449cca058142815844bbe | | region_id | regionOne | | resource_limit | 2 | | resource_name | class:VCPU | | service_id | cf9ffaabb42247839578f36963223ff9 | +----------------+----------------------------------+ sh-5.1$ openstack $cli_creds limit list +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ | ID | Project ID | Service ID | Resource Name | Resource Limit | Description | Region ID | +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ | 21fe14d718fd44c9a1f6cfea26afa435 | 6d141db651f449cca058142815844bbe | cf9ffaabb42247839578f36963223ff9 | class:VCPU | 2 | None | regionOne | +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ ### Create up to 3 servers sh-5.1$ openstack $cli_creds server create --image cirros-0.6.2-x86_64-disk.img --flavor m1.nano test-vm --min 2 --max 3 --wait +-------------------------------------+---------------------------------------------------------------------+ | Field | Value | +-------------------------------------+---------------------------------------------------------------------+ | OS-DCF:diskConfig | MANUAL | | OS-EXT-AZ:availability_zone | nova | | OS-EXT-SRV-ATTR:host | edpm-compute-0.ctlplane.example.com | | OS-EXT-SRV-ATTR:hypervisor_hostname | edpm-compute-0.ctlplane.example.com | | OS-EXT-SRV-ATTR:instance_name | instance-00000103 | | OS-EXT-STS:power_state | Running | | OS-EXT-STS:task_state | None | | OS-EXT-STS:vm_state | active | | OS-SRV-USG:launched_at | 2025-02-04T19:59:51.000000 | | OS-SRV-USG:terminated_at | None | | accessIPv4 | | | accessIPv6 | | | addresses | | | adminPass | cs4LRh9NCH4A | | config_drive | True | | created | 2025-02-04T19:59:47Z | | flavor | m1.nano (8386f658-dffc-4ebb-9ca6-1c1d5eb2e8ca) | | hostId | 17302b7e3b88303746974ecc4d5d5f2b4782205ad58a1fc2d2c38e8b | | id | c0942348-5339-40f4-b65b-571b172e36fa | | image | cirros-0.6.2-x86_64-disk.img (dd5526a0-2c95-4646-90c9-0c27fa7143fe) | | key_name | None | | name | test-vm-1 | | progress | 0 | | project_id | 6d141db651f449cca058142815844bbe | | properties | | | security_groups | name='default' | | status | ACTIVE | | updated | 2025-02-04T19:59:51Z | | user_id | b587a33b3d7d4f899cb1769a2c97c2a7 | | volumes_attached | | +-------------------------------------+---------------------------------------------------------------------+ # Only 2 should be created sh-5.1$ openstack $cli_creds server list +--------------------------------------+-----------+--------+----------+------------------------------+---------+ | ID | Name | Status | Networks | Image | Flavor | +--------------------------------------+-----------+--------+----------+------------------------------+---------+ | bab08093-13af-44e8-80fa-5968e97900b2 | test-vm-2 | ACTIVE | | cirros-0.6.2-x86_64-disk.img | m1.nano | | c0942348-5339-40f4-b65b-571b172e36fa | test-vm-1 | ACTIVE | | cirros-0.6.2-x86_64-disk.img | m1.nano | +--------------------------------------+-----------+--------+----------+------------------------------+---------+ # Change the limit such that the respective resource would be over current quota sh-5.1$ openstack $cli_creds limit list +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ | ID | Project ID | Service ID | Resource Name | Resource Limit | Description | Region ID | +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ | 21fe14d718fd44c9a1f6cfea26afa435 | 6d141db651f449cca058142815844bbe | cf9ffaabb42247839578f36963223ff9 | class:VCPU | 2 | None | regionOne | +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ sh-5.1$ openstack $cli_creds server list +--------------------------------------+-----------+--------+----------+------------------------------+---------+ | ID | Name | Status | Networks | Image | Flavor | +--------------------------------------+-----------+--------+----------+------------------------------+---------+ | bab08093-13af-44e8-80fa-5968e97900b2 | test-vm-2 | ACTIVE | | cirros-0.6.2-x86_64-disk.img | m1.nano | | c0942348-5339-40f4-b65b-571b172e36fa | test-vm-1 | ACTIVE | | cirros-0.6.2-x86_64-disk.img | m1.nano | +--------------------------------------+-----------+--------+----------+------------------------------+---------+ sh-5.1$ openstack $cli_creds limit set --resource-limit 1 21fe14d718fd44c9a1f6cfea26afa435 +----------------+----------------------------------+ | Field | Value | +----------------+----------------------------------+ | description | None | | domain_id | None | | id | 21fe14d718fd44c9a1f6cfea26afa435 | | project_id | 6d141db651f449cca058142815844bbe | | region_id | regionOne | | resource_limit | 1 | | resource_name | class:VCPU | | service_id | cf9ffaabb42247839578f36963223ff9 | +----------------+----------------------------------+ sh-5.1$ openstack $cli_creds limit list +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ | ID | Project ID | Service ID | Resource Name | Resource Limit | Description | Region ID | +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ | 21fe14d718fd44c9a1f6cfea26afa435 | 6d141db651f449cca058142815844bbe | cf9ffaabb42247839578f36963223ff9 | class:VCPU | 1 | None | regionOne | +----------------------------------+----------------------------------+----------------------------------+---------------+----------------+-------------+-----------+ sh-5.1$ openstack $cli_creds server delete c0942348-5339-40f4-b65b-571b172e36fa sh-5.1$ openstack $cli_creds server create --image cirros-0.6.2-x86_64-disk.img --flavor m1.nano test-vm-3 --wait Project 6d141db651f449cca058142815844bbe is over a limit for [Resource class:DISK_GB is over limit of -1 due to current usage 1 and delta 1, Resource class:MEMORY_MB is over limit of -1 due to current usage 128 and delta 128, Resource class:VCPU is over limit of 1 due to current usage 1 and delta 1, Resource servers is over limit of -1 due to current usage 1 and delta 1] (HTTP 403) (Request-ID: req-bb6eacb6-5068-4a2f-bc32-98a1616c88bb) # Attempt to modify Regisitered Limit while associated Limit is present sh-5.1$ openstack $cli_creds limit create --service nova --project demo --resource-limit 2 class:VCPU --region regionOne +----------------+----------------------------------+ | Field | Value | +----------------+----------------------------------+ | description | None | | domain_id | None | | id | 27cb3d97eb8f4081803a5ad200621498 | | project_id | 6d141db651f449cca058142815844bbe | | region_id | regionOne | | resource_limit | 2 | | resource_name | class:VCPU | | service_id | cf9ffaabb42247839578f36963223ff9 | +----------------+----------------------------------+ sh-5.1$ openstack registered limit set --default-limit -1 c35deea6185343d9872f2f470e693466 Unable to update or delete registered limit c35deea6185343d9872f2f470e693466 because there are project limits associated with it. (HTTP 403) (Request-ID: req-3cce814a-7f01-4ab8-82e9-2653530bb623) # Test required versus ignore: # Require and list has 'class:DISK_GB,class:MEMORY_MB' [zuul@controller-0 ~]$ oc get osctlplane controlplane -o json | jq -r .spec.nova.template.apiServiceTemplate.customServiceConfig [quota] driver = nova.quota.UnifiedLimitsDriver unified_limits_resource_strategy = require unified_limits_resource_list='class:DISK_GB,class:MEMORY_MB' [oslo_limit] auth_url = https://keystone-public-openstack.apps.ocp.openstack.lab auth_type = password user_domain_name = Default username = nova valid_interfaces = internal password = 12345678 endpoint_id = c1c230ebf60c4f4b986ceeb1f4a77ba5 system_scope=all sh-5.1$ openstack registered limit list sh-5.1$ openstack server create --image cirros-0.6.2-x86_64-disk.img --flavor m1.micro test-vm-01 --wait Project c9ffcbb2f24e4a2a864c7ee4659cd01e is over a limit for [Resource class:DISK_GB is over limit of 0 due to current usage 0 and delta 1, Resource class:MEMORY_MB is over limit of 0 due to current usage 0 and delta 192, Resource class:VCPU is over limit of 0 due to current usage 0 and delta 1, Resource servers is over limit of 0 due to current usage 0 and delta 1] (HTTP 403) (Request-ID: req-fbae1374-af74-4877-9560-3d8921ef6a81) # Add the necessary limits from the required list sh-5.1$ openstack registered limit create --service nova --default-limit -1 class:MEMORY_MB --region regionOne +---------------+----------------------------------+ | Field | Value | +---------------+----------------------------------+ | default_limit | -1 | | description | None | | id | 7049873008ba41a98056fdaa74d665b5 | | region_id | regionOne | | resource_name | class:MEMORY_MB | | service_id | cf9ffaabb42247839578f36963223ff9 | +---------------+----------------------------------+ sh-5.1$ openstack registered limit create --service nova --default-limit -1 class:DISK_GB --region regionOne +---------------+----------------------------------+ | Field | Value | +---------------+----------------------------------+ | default_limit | -1 | | description | None | | id | 44007f40b3234fe0a378fe2f0b2777a1 | | region_id | regionOne | | resource_name | class:DISK_GB | | service_id | cf9ffaabb42247839578f36963223ff9 | +---------------+----------------------------------+ sh-5.1$ openstack server create --image cirros-0.6.2-x86_64-disk.img --flavor m1.micro test-vm-01 --wait +-------------------------------------+---------------------------------------------------------------------+ | Field | Value | +-------------------------------------+---------------------------------------------------------------------+ | OS-DCF:diskConfig | MANUAL | | OS-EXT-AZ:availability_zone | nova | | OS-EXT-SRV-ATTR:host | edpm-compute-0.ctlplane.example.com | | OS-EXT-SRV-ATTR:hypervisor_hostname | edpm-compute-0.ctlplane.example.com | | OS-EXT-SRV-ATTR:instance_name | instance-00000109 | | OS-EXT-STS:power_state | Running | | OS-EXT-STS:task_state | None | | OS-EXT-STS:vm_state | active | | OS-SRV-USG:launched_at | 2025-02-04T21:19:15.000000 | | OS-SRV-USG:terminated_at | None | | accessIPv4 | | | accessIPv6 | | | addresses | public=192.168.122.233 | | adminPass | BUcuY4PtmM2r | | config_drive | True | | created | 2025-02-04T21:19:08Z | | flavor | m1.micro (3d456ac1-c0e6-45c5-9319-e436c35122e4) | | hostId | f20fb3c348ccded2a94e020825fc7fa3541263a377894484f7c52038 | | id | eea0d33c-00a2-4935-abc2-3c97f997981c | | image | cirros-0.6.2-x86_64-disk.img (dd5526a0-2c95-4646-90c9-0c27fa7143fe) | | key_name | None | | name | test-vm-01 | | progress | 0 | | project_id | c9ffcbb2f24e4a2a864c7ee4659cd01e | | properties | | | security_groups | name='default' | | status | ACTIVE | | updated | 2025-02-04T21:19:16Z | | user_id | b587a33b3d7d4f899cb1769a2c97c2a7 | | volumes_attached | | +-------------------------------------+---------------------------------------------------------------------+ # Test when startegy is set to ignore: [zuul@controller-0 ~]$ oc get osctlplane controlplane -o json | jq -r .spec.nova.template.apiServiceTemplate.customServiceConfig [quota] driver = nova.quota.UnifiedLimitsDriver unified_limits_resource_strategy = ignore unified_limits_resource_list='class:DISK_GB,class:MEMORY_MB' [oslo_limit] auth_url = https://keystone-public-openstack.apps.ocp.openstack.lab auth_type = password user_domain_name = Default username = nova valid_interfaces = internal password = 12345678 endpoint_id = c1c230ebf60c4f4b986ceeb1f4a77ba5 system_scope=all # Below regisitered should not be enough to create a guest sh-5.1$ openstack registered limit list +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ | ID | Service ID | Resource Name | Default Limit | Description | Region ID | +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ | 7049873008ba41a98056fdaa74d665b5 | cf9ffaabb42247839578f36963223ff9 | class:MEMORY_MB | -1 | None | regionOne | | 44007f40b3234fe0a378fe2f0b2777a1 | cf9ffaabb42247839578f36963223ff9 | class:DISK_GB | -1 | None | regionOne | +----------------------------------+----------------------------------+-----------------+---------------+-------------+-----------+ sh-5.1$ openstack server create --image cirros-0.6.2-x86_64-disk.img --flavor m1.micro test-vm-01 --wait Project c9ffcbb2f24e4a2a864c7ee4659cd01e is over a limit for [Resource class:DISK_GB is over limit of -1 due to current usage 0 and delta 1, Resource class:MEMORY_MB is over limit of -1 due to current usage 0 and delta 192, Resource class:VCPU is over limit of 0 due to current usage 0 and delta 1, Resource servers is over limit of 0 due to current usage 0 and delta 1] (HTTP 403) (Request-ID: req-53325657-6598-4629-8594-06b9d77f93c4) # Remove the DISK_GB and MEMORY_MB and add servers/VCPU resource class sh-5.1$ openstack registered limit delete 7049873008ba41a98056fdaa74d665b5 sh-5.1$ openstack registered limit delete 44007f40b3234fe0a378fe2f0b2777a1 sh-5.1$ openstack registered limit create --service nova --default-limit -1 class:VCPU --region regionOne +---------------+----------------------------------+ | Field | Value | +---------------+----------------------------------+ | default_limit | -1 | | description | None | | id | 1b6db2245b4e404eac6018f372acd301 | | region_id | regionOne | | resource_name | class:VCPU | | service_id | cf9ffaabb42247839578f36963223ff9 | +---------------+----------------------------------+ sh-5.1$ openstack registered limit create --service nova --default-limit -1 servers --region regionOne +---------------+----------------------------------+ | Field | Value | +---------------+----------------------------------+ | default_limit | -1 | | description | None | | id | 1dab984fdace4e7ea95ba4a7a6bdeabc | | region_id | regionOne | | resource_name | servers | | service_id | cf9ffaabb42247839578f36963223ff9 | +---------------+----------------------------------+ # Since DISK_GB and MEMORY_MB are on ignore list the only resources need are servers and VCPU sh-5.1$ openstack server create --image cirros-0.6.2-x86_64-disk.img --flavor m1.micro test-vm-01 --wait +-------------------------------------+---------------------------------------------------------------------+ | Field | Value | +-------------------------------------+---------------------------------------------------------------------+ | OS-DCF:diskConfig | MANUAL | | OS-EXT-AZ:availability_zone | nova | | OS-EXT-SRV-ATTR:host | edpm-compute-0.ctlplane.example.com | | OS-EXT-SRV-ATTR:hypervisor_hostname | edpm-compute-0.ctlplane.example.com | | OS-EXT-SRV-ATTR:instance_name | instance-0000010c | | OS-EXT-STS:power_state | Running | | OS-EXT-STS:task_state | None | | OS-EXT-STS:vm_state | active | | OS-SRV-USG:launched_at | 2025-02-04T21:35:02.000000 | | OS-SRV-USG:terminated_at | None | | accessIPv4 | | | accessIPv6 | | | addresses | public=192.168.122.178 | | adminPass | 7YRnMDcJsdE7 | | config_drive | True | | created | 2025-02-04T21:34:56Z | | flavor | m1.micro (3d456ac1-c0e6-45c5-9319-e436c35122e4) | | hostId | f20fb3c348ccded2a94e020825fc7fa3541263a377894484f7c52038 | | id | a6b9b845-9161-4755-b5ec-2f8f4698f1ed | | image | cirros-0.6.2-x86_64-disk.img (dd5526a0-2c95-4646-90c9-0c27fa7143fe) | | key_name | None | | name | test-vm-01 | | progress | 0 | | project_id | c9ffcbb2f24e4a2a864c7ee4659cd01e | | properties | | | security_groups | name='default' | | status | ACTIVE | | updated | 2025-02-04T21:35:02Z | | user_id | b587a33b3d7d4f899cb1769a2c97c2a7 | | volumes_attached | | +-------------------------------------+---------------------------------------------------------------------+