Skip to main content

Orchestrator-Side Quota Sync

CMP manages quotas at the application level. Each connected orchestrator also enforces its own limits. The two systems are not synced automatically — admins must keep orchestrator limits equal to or greater than CMP account and project quotas.

Quick start
OrchestratorStatus
CloudStackFully documented — use the links in CloudStack below
OpenStack, VMware, Proxmox, OpenNebula, and othersSame general principle applies — detailed CMP docs coming soon

The mismatch problem​

CMP allows: 20 vCPUs for Customer A
Orchestrator account limit: 10 vCPUs (default or outdated)

Result: Customer hits orchestrator limit before CMP limit
→ Provisioning fails with an orchestrator error
→ Customer sees a confusing error despite having CMP quota available

Always keep orchestrator limits ≥ CMP quota values for every resource you sell.

CloudStack​

CloudStack enforces limits at domain, account, and project levels. CMP does not call CloudStack quota APIs as its quota engine — customer quotas are managed in CMP. CloudStack max.* Global Settings remain active and can still block provisioning.

Required reading​

TopicLink
Full CloudStack quota guide (max.* keys, defaults, checklist)Quota Management (ACS)
Why CloudStack and CMP quotas differTwo independent quota systems
How to set CloudStack Global SettingsConfiguring CloudStack quotas
CMP ↔ CloudStack resource mappingMapping CMP quotas to CloudStack settings
After CMP quota increasesVerify after CMP quota changes
Connect CloudStack to CMP (includes Wizard Step 6 global quota)Connecting CMP to CloudStack
CMP global defaults for new customersGlobal Resource Quotas
Per-customer CMP limitsAccount-Level Quotas
Approve quota increase requests in CMPQuota Requests & Approvals
  • Set domain limits to -1 (unlimited) or a very high value — see Domain-level quota settings
  • Set account and project max.* values to ≥ the highest CMP account / project quotas you assign — or -1 where supported
  • Use the validation checklist on Quota Management (ACS) before go-live

Key settings (full list on the ACS page):

CloudStack SettingSet to
max.account.user.vms≥ CMP Instances / Virtual Machine quota
max.account.cpus≥ CMP CPU quota
max.account.memory≥ CMP Memory quota (MiB in CloudStack — CMP uses GB)
max.account.primary.storage≥ CMP storage quota (GiB)
max.account.snapshots≥ CMP snapshot quota
max.account.public.ips≥ CMP IP Address quota
max.domain.*High or -1 (unlimited)
max.project.*≥ CMP project limits (or -1)

After approving a CMP quota request (CloudStack)​

When you approve a request under Settings → Quota → Resource Quota Requests, CMP updates the account quota only. Also verify CloudStack account (and project) limits still exceed the new values.

See Quota Requests & Approvals and Verify after CMP quota changes.

Other orchestrators (docs coming soon)​

CMP also supports OpenStack, VMware vSphere, Proxmox VE, OpenNebula, and other backends. The same rule applies to all of them:

Documentation coming soon

Detailed orchestrator-side quota sync pages for OpenStack, VMware, Proxmox, OpenNebula, and related integrations will be added when those orchestrator sections are fully documented.

Until then:

  1. Keep each orchestrator's project / account / tenant limits ≥ the matching CMP account and project quotas
  2. After approving a quota request in CMP, update the orchestrator-side limits manually if they are lower than the new CMP values
  3. Prefer setting orchestrator caps high enough that CMP is the customer-facing limit customers see first

Placeholder orchestrator hubs (content TBD):

General best practice​

Rule of thumb

Set orchestrator limits to at least 2× the highest CMP quota you plan to assign (or unlimited / -1 where supported). That way the orchestrator rarely becomes the bottleneck during normal growth or quota request approvals.

Was this page helpful?
Found something that could be improved?