Quota and limits troubleshooting
Coming from another cloud?
▸AWS·Service Limits
This Quake AI feature maps to AWS’s Service Limits.
▸DigitalOcean·Account Limits
This Quake AI feature maps to DigitalOcean’s Account Limits.
Quota and limits troubleshooting
Quake AI enforces per-project quotas on compute, network, and storage resources. When a quota is exhausted, resource creation fails immediately with an error that names the exhausted resource. This page covers how to diagnose which quota is hit, how to free capacity, and when to request an increase.
Symptom patterns by service#
| Service | Symptom | Typical error message |
|---|---|---|
| Compute | Instance creation fails | "Quota exceeded for resources: instances" or "Quota exceeded for resources: cores, ram" |
| Network | Floating IP allocation fails | "Quota exceeded for resources: public_ip" |
| Network | Security group creation fails | "Quota exceeded for resources: security_group" |
| Block storage | Volume creation fails | "VolumeLimitExceeded" or "Quota exceeded for volumes" |
| Block storage | Snapshot creation fails | Quota exhaustion on snapshots or gigabytes |
| Object storage | Container or object creation fails | HTTP 413 or quota-related 403 |
Diagnosis#
Check overall quota usage#
openstack quota show --usageThis shows each resource type, its limit, and current usage in one view.
You can also check quotas programmatically via the API /limits endpoint. The Compute API returns quotas at GET /v2.1/limits and the Block Storage API at GET /v3/{project_id}/limits. Both return an absolute object with maxTotal* limits and total*Used counters. See the Compute API reference and Block Storage API reference for the full response shape.
View quotas in the portal#
Skyline has no dedicated Quotas or Limits page. The Dashboard (the default page after sign-in, left-nav label Dashboard, route /base/overview) is the quota surface: its panels show per-resource Limit against In Use for Compute, Network, Block Storage, and Object Storage. Navigate by the left-nav label rather than the URL, which can change between Skyline releases.
Identify the exhausted resource#
openstack quota show --usage returns four columns: Resource, Limit, In Use, and Reserved. Look for resources where In Use equals or exceeds Limit. The Status column below is a reader annotation; the CLI does not emit it.
| Resource | Limit | In Use | Status (annotation) |
|---|---|---|---|
instances | 10 | 10 | Exhausted |
cores | 20 | 18 | Near limit |
ram | 51200 | 51200 | Exhausted |
volumes | 10 | 6 | Available |
gigabytes | 1000 | 450 | Available |
public_ip | 5 | 5 | Exhausted |
The public_ip row covers the floating-IP and public-IP quota family. Its In Use count includes router external gateway IPs, not floating IPs alone, so floating IPs and router gateways draw on the same quota. The CLI also reports a separate floating_ips row whose In Use count can differ from public_ip; run openstack floating ip list for the authoritative floating-IP count.
Portal label translation#
The CLI and the Skyline Dashboard name the same quota differently. When you cross-reference a CLI error against the Dashboard, translate the resource name:
| Doc / CLI name | Portal Dashboard label | Notes |
|---|---|---|
instances | Instances | Case differs only |
cores | vCPUs (Dedicated) | Dashboard separates dedicated from shared vCPUs |
ram | Memory | CLI reports MiB; the Dashboard shows GiB |
public_ip, floating_ips | Public IPs | Left-nav labels the same page "Floating IPs" |
security_group | Security Groups | Portal uses the plural with no underscore |
volumes | Volumes | Same name |
snapshots | Snapshots | Same name |
gigabytes | Size (GiB) | Block-storage size in GiB, not MiB |
Service-specific quota checks#
Compute resources:
openstack server list --status ACTIVE
openstack server list --status SHUTOFF
openstack server list --status ERRORInstances in SHUTOFF and ERROR states still consume quota for instances, cores, and RAM.
Floating IPs:
openstack floating ip listFloating IPs that are allocated but not associated to any instance still consume quota.
Volumes:
openstack volume list
openstack volume list --status available
openstack volume list --status errorVolumes in available and error states consume both volumes and gigabytes quota.
Snapshots:
openstack volume snapshot listEach snapshot consumes snapshots quota and contributes to gigabytes usage.
Remediation#
Work through this cleanup sequence, checking quota after each step.
Step 1: delete ERROR-state resources#
These are the safest to remove; they are already non-functional:
openstack server list --status ERROR
openstack server delete ERROR_INSTANCE_ID
openstack volume list --status error
openstack volume delete ERROR_VOLUME_IDStep 2: delete unused SHUTOFF instances#
Instances that are stopped still consume quota:
openstack server list --status SHUTOFF
openstack server delete UNUSED_SHUTOFF_INSTANCEStep 3: Release unassociated floating IPs#
openstack floating ip list --status DOWN
openstack floating ip delete UNUSED_FLOATING_IPA floating IP with status: DOWN is allocated but not associated with any port.
Step 4: Delete unused volumes and old snapshots#
openstack volume list --status available
openstack volume delete UNUSED_VOLUME
openstack volume snapshot list
openstack volume snapshot delete OLD_SNAPSHOTStep 5: Verify freed capacity#
openstack quota show --usageConfirm the exhausted resource now has available capacity, then retry your original operation.
Requesting a quota increase#
If cleanup does not free sufficient capacity, request a quota increase:
- Check your current plan tier on the account dashboard
- File a request through the support portal with:
- Which resource(s) need increased limits
- Current usage and requested new limit
- Business justification (brief)
- Quota increases are subject to platform capacity and plan tier availability
Verification#
After cleanup or quota increase, verify the operation that originally failed:
openstack quota show --usageThen retry the original resource creation.
Prevention#
- Run
openstack quota show --usageas a pre-flight check before large deployments or batch operations - Clean up test and development resources after use
- Delete ERROR-state resources on a schedule; they consume quota without providing value
- Monitor quota utilization proactively; do not wait for creation failures
- Use
openstack server list --all-projects(if you have admin access) to audit resource usage across projects
Quota CLI commands#
Show quota usage for the current project#
openstack quota show --usageThis is the primary diagnostic command. It shows each resource type, its limit, and current usage in one table.
Show quota limits without usage#
openstack quota showReturns the configured limits without current usage counts.
List quotas across projects (admin only)#
openstack quota list --compute
openstack quota list --network
openstack quota list --volumeShow API rate and resource limits#
openstack limits show --absoluteReturns the same data as the /limits API endpoint. The --absolute flag shows resource quotas. See API rate limits for details on the /limits response.
See also#
- API rate limits: quotas vs. rate limits, the
/limitsendpoint - Instance lifecycle troubleshooting
- Volume troubleshooting
- Troubleshooting overview
- Support ticket evidence collection
Usage Guidelines
The sample code, software libraries, command line tools, proofs of concept, templates, and other related technology on this page (including any of the foregoing that is provided by Quake AI personnel) is provided to you as Quake AI Content under the Quake AI Customer Agreement, or the relevant written agreement between you and Quake AI (whichever applies). Do not use this Quake AI Content in your production accounts, or on production or other critical data. You are responsible for testing, securing, and optimizing the Quake AI Content (such as sample code) as appropriate for production grade use based on your specific quality control practices and standards. Deploying Quake AI Content may incur Quake AI charges for creating or using Quake AI chargeable resources, such as running Compute instances or storing data in Object Storage. Your use is also subject to the Acceptable Use Policy.
For the full policy, see Usage Guidelines.
Last validated: 19.06.2026