An Azure service that provides serverless Kubernetes, an integrated continuous integration and continuous delivery experience, and enterprise-grade security and governance.
Hello Steph-0274
Based on the errors and troubleshooting you've already performed, this looks like an Azure Compute capacity/placement constraint affecting the NCas T4 v3 GPU family in East US 2.
Both NC4as_T4_v3 and NC8as_T4_v3 fail, including configurations without availability zones and with Managed OS disks.
-
OverconstrainedAllocationRequest: Azure cannot allocate VMs satisfying the combined SKU, networking, disk, and placement constraints. -
ZonalAllocationFailed: Insufficient capacity for the requested VM size in the specified availability zone.
These errors are not exclusive to East US 2 or GPU VMs.
I recommend:
- Check quota separately from capacity. Use
az vm list-usage --location eastus2andaz vm list-skus --location eastus2 --size Standard_NC4as_T4_v3 --all. These help identify quota and SKU restrictions, but neither guarantees live VM allocation capacity. - Avoid further deletion or recreation of the existing GPU pool until replacement capacity is confirmed. Since Managed OS disks and different zone configurations also failed, changing disk settings alone is unlikely to resolve this.
- Try creating a second GPU node pool using an alternative GPU SKU supported by AKS in East US 2. Validate that a node becomes
Ready, NVIDIA drivers work, and the GPU workload runs successfully before migrating workloads. - For production, avoid relying on a single GPU node. Use a second GPU node pool or reserve sufficient GPU capacity where supported. Microsoft supports associating Capacity Reservation Groups with new AKS node pools.
- Open an Azure Support case under AKS/VM allocation and request investigation by the Azure Compute capacity team. Provide the failed VMSS deployment IDs, timestamps, region, attempted SKUs, and exact allocation errors. Ask whether NCas T4 v3 capacity is currently constrained for your subscription in East US 2.
For upgrades where additional GPU capacity is unavailable, AKS also supports maxSurge=0 with maxUnavailable, allowing in-place upgrades. I would not recommend that approach for a single production GPU node, because it requires downtime and may still fail if Azure cannot allocate the replacement VM.
Confirm alternative GPU capacity first, deploy and validate a replacement pool, migrate workloads, and only then retire the failed pool. For production upgrades, consider capacity reservations to reduce the risk of encountering the same allocation failure again.
Documentation