Introduction
Azure virtual machine resize fails when target size is unavailable in current region or quota exceeded. This guide provides step-by-step diagnosis and resolution.
Symptoms
Typical error output:
Error: Operation 'VMResize' failed
The requested VM size 'Standard_D8s_v5' is not available in the current region 'eastus'
QuotaExceeded: Current quota limit for 'standardDSv5Family' is 0Common Causes
- 1.Target VM size not available in current region
- 2.Subscription quota limit reached for VM family
- 3.VM currently running prevents resize to smaller size
- 4.Proximity placement group constraints
Step-by-Step Fix
Step 1: Check Current State
az vm list-skus --location eastus --size Standard_D8s_v5
az vm show --resource-group MyRG --name MyVM --query hardwareProfile.vmSize
az quota show --scope /subscriptions/<sub-id> --resource-name standardDSv5FamilyStep 2: Identify Root Cause
az monitor activity-log list --resource-group MyRG --status FailedStep 3: Apply Primary Fix
```bash # Resize VM to available size az vm resize --resource-group MyRG --name MyVM --size Standard_D4s_v5
# Request quota increase if needed az quota request create --scope /subscriptions/<sub-id> --resource-name standardDSv5Family --limit 20 ```
Step 4: Apply Alternative Fix
```bash # Alternative fix: Check configuration az resource show --resource-group MyRG --name MyResource -o yaml
# Update specific properties az resource update --resource-group MyRG --name MyResource --set properties.<key>=<value>
# Verify the fix az resource show --resource-group MyRG --name MyResource --query properties.<key> ```
Step 5: Verify the Fix
az vm show --resource-group MyRG --name MyVM --query hardwareProfile.vmSize
az vm get-instance-view --resource-group MyRG --name MyVM --query statusesCommon Pitfalls
- Forgetting to check quota limits before resize operations
- Not waiting for async operations to complete before next step
- Missing RBAC permissions for Azure resource operations
- Confusing subscription-level and resource-level quotas
Best Practices
- Always check quota before provisioning new resources
- Use Azure Resource Health for monitoring
- Implement proper error handling in Azure CLI scripts
- Enable diagnostic settings for all critical resources
Related Issues
- Azure Subscription Quota Exceeded
- Azure Resource Deployment Failed
- Azure Network Connectivity Issues
- Azure RBAC Permission Denied