AKS node pool scaling fails with QuotaExceeded
Your AKS cluster can't scale up because Azure's regional vCPU quota for that VM series is maxed out. Here's how to check and bump it.
When this error shows up
You're running an AKS cluster in a region like East US or West Europe. You go to scale out a node pool—maybe from 3 to 10 nodes—and the operation hangs. After a few minutes, you get a QuotaExceeded error in the Azure portal or a message like "Operation failed with status code: 403" in the CLI. This happens most often when you're scaling to a VM size you haven't used much in that region before, or when your subscription has a low default quota for that series. I've seen it with Standard_D4s_v3 nodes right after creating a new subscription.
Root cause in plain English
Azure limits how many vCPUs you can use per region, per VM series. These limits vary by subscription type and region. For example, a Pay-As-You-Go subscription might have a default quota of 10 vCPUs for the Dv3 series in East US. When your AKS node pool tries to add more nodes than those 10 vCPUs allow, Azure says "nope." The error looks like a platform issue, but it's just your quota. The real fix is to check your current usage and increase that limit.
How to fix it — step by step
- Identify which VM series is blocked. Look at the error message. It usually says something like "Operation could not be completed as it results in exceeding approved standardDv3Family quota." If the message isn't clear, go to the Azure portal, open your AKS cluster, and check the node pool's VM size. For example, if your nodes are
Standard_D4s_v3, that's 4 vCPUs per node. The quota family isstandardDv3Family. - Check your current quota and usage. In the Azure portal, search for "Quotas" in the top bar. Select "Compute" from the list. Find your region (e.g., East US) and the VM family (e.g., Standard Dv3 Family vCPUs). You'll see "Current usage" and "Current limit." If your usage plus the new nodes' vCPUs exceeds the limit, that's your problem.
- Request a quota increase. From the same quota blade, click the pencil icon next to the limit. Enter a new limit that covers what you need. For example, if you want 10 nodes at 4 vCPUs each, request 40 vCPUs. Microsoft will review the request, often within a few hours for standard limits. For large increases (like 500 vCPUs), they might ask for justification. Fill out the form and submit.
- Retry scaling the node pool. Once the quota increase is approved—you'll get an email—go back to your AKS cluster. Scale the node pool again. It should succeed this time. If it doesn't, wait 5 minutes for the quota change to propagate and try again.
What to check if it still fails
If the node pool still won't scale after the quota increase, look at a few other things. First, check if you hit a total regional vCPU quota (not per-series). Some subscription types have a cap on all vCPUs in a region. Second, verify that the VM size you're using is available in that region—some sizes get retired. Third, make sure your node pool isn't using spot instances that have their own quota limits. Finally, run az vm list-usage --location eastus --output table to see all quota types by region. If none of that helps, open a support ticket with Microsoft and include the new quota approval number.
Was this solution helpful?