Edit

Share via


Quotas for Azure Container Apps

Azure Container Apps assigns different quota types to different scopes. In addition to the subscription scope, quotas also apply to region, environment, and application scopes. All quota requests are initiated using Azure Quota Management System (QMS), which features two options for making quota requests.

Request type Description Use for these scopes... View request status via
Integrated requests Integrated requests are often approved within a few minutes. If your request exceeds a quotas threshold, then a support ticket is generated for a Support Engineer to review the request. Review times can delay approval by up to a few days. ▪ region

▪ subscription
Azure portal
Manual requests Manual requests always result in generating a support ticket. Approval is often automated, but some requests can take up to a few days for us to process. ▪ environment Azure CLI

Note

Azure Container Apps is a production grade service designed for at-scale workloads. Making a quota request that escalates to the support team isn't out of the norm, but part of the process of managing resources on behalf of our customers. Azure Container Apps is an at-scale service. Most all quota change requests are granted with exceptions only in limited circumstances.

View current quotas levels

You can view your quota levels via the Azure portal and through the Azure CLI, depending on the quota type.

When in the portal, select Azure Container Apps for the Provider.

Screenshot of provider and subscription dropdowns in the quota window.

Quotas change requests made via the manual method aren't available in the portal. Use the following command to view your quotas on a per environment basis.

Before you run the following command, make sure to replace the placeholders surrounded by <> with your own values.

az containerapp env list-usages \
  --resource-group <RESOURCE_GROUP_NAME> \
  --name <ENVIRONMENT_NAME>

When to request quota

If an environment or subscription reaches a quota limit, it can have unintended consequences which include:

  • Scaling restrictions on an app
  • Provisioning times out with a failure
  • Container Apps environment or workload profile creation failure

Your default quotas depend on factors which include the age and type of your subscription, and service use. If your app could receive thousands of requests per minute, you check your current quota allocations before moving your application into production.

If you encounter a Maximum Allowed Cores exceeded for the Managed Environment error, similar to the following example, you need to request a quota increase.

Maximum Allowed Cores exceeded for the Managed Environment.

Please check https://learn.microsoft.com/en-us/azure/container-apps/quotas for resource limits

Other error messages could indicate that you've reached an environment or other quota limit. The Azure Quota Management System allows you to monitor and alert on quota usage to proactively prevent constraints.

Quota types

Azure Container Apps implements different categories of quotas that govern resource allocation across different aspects of your apps. These quotas are organized into basic quotas that control fundamental resource limits, GPU quotas for applications requiring specialized compute capabilities, and dynamic sessions quotas for session-based workloads.

Basic quotas

The most requested quota changes are listed in the following table. Each scope indicates the reach of each quota. Regionally scoped quotas change on a per region basis. Environment scoped quotas require per environment requests.

Quota Scope Request View Remarks
Managed Environment Count Region Integrated request Portal The number of environments per region.
Managed Environment Consumption Cores Environment Manual request CLI The number of maximum consumption cores the environment is allocated to use. This value is the sum of cores requested by each active replica (across all apps) in an environment.
Managed Environment General Purpose Cores Environment Manual request CLI The total cores available to all general purpose (D-series) profiles within an environment.
Managed Environment Memory Optimized Cores Environment Manual request CLI The total cores available to all memory optimized (E-series) profiles within an environment.

GPU quotas

Quota Scope Request View Remarks
Subscription Consumption NCA 100 GPUs Region Integrated request Portal The number of maximum consumption A100 GPU cores environments in this region are allocated to use.
Subscription Consumption T 4 GPUs Region Integrated request Portal The number of maximum consumption T4 GPU cores environments in this region are allocated to use.
Subscription NCA 100 GPUs Region Integrated request Portal The number of maximum dedicated A100 GPU cores environments across this region are allocated to use.

Dynamic sessions quotas

Quota Scope Request View Remarks
Session pools Region Integrated request Portal Maximum number of dynamic session pools per region.