# Azure Quota Requirements for DeFi Oracle Meta Mainnet ## Subscription Information **Subscription ID**: `6d3c4263-bba9-497c-8843-eae6c4e87192` **Region**: `westeurope` (West Europe) **Current Status**: Limited by vCPU quota ## Current Quota Status **Available vCPUs**: 4 (insufficient for full deployment) **Required vCPUs**: 52+ (for full production deployment) ## Detailed Quota Requirements ### VM Size Specifications | VM Size | vCPUs | RAM (GB) | Used For | |---------|-------|----------|----------| | Standard_D2s_v3 | 2 | 8 | System nodes | | Standard_D4s_v3 | 4 | 16 | Validators, Sentries | | Standard_D8s_v3 | 8 | 32 | RPC nodes | ### Full Production Deployment Requirements #### System Node Pool - **VM Size**: Standard_D2s_v3 (2 vCPUs each) - **Node Count**: 3 nodes - **Total vCPUs**: 6 vCPUs - **Auto-scaling**: 2-5 nodes (4-10 vCPUs max) #### Validators Node Pool - **VM Size**: Standard_D4s_v3 (4 vCPUs each) - **Node Count**: 4 nodes - **Total vCPUs**: 16 vCPUs - **Auto-scaling**: Disabled (fixed count) #### Sentries Node Pool - **VM Size**: Standard_D4s_v3 (4 vCPUs each) - **Node Count**: 3 nodes - **Total vCPUs**: 12 vCPUs - **Auto-scaling**: 2-5 nodes (8-20 vCPUs max) #### RPC Node Pool - **VM Size**: Standard_D8s_v3 (8 vCPUs each) - **Node Count**: 3 nodes - **Total vCPUs**: 24 vCPUs - **Auto-scaling**: 2-10 nodes (16-80 vCPUs max) ### Total vCPU Requirements | Scenario | Minimum vCPUs | Maximum vCPUs | |----------|---------------|---------------| | **Baseline (no auto-scaling)** | 58 vCPUs | 58 vCPUs | | **With auto-scaling (max)** | 58 vCPUs | 130 vCPUs | ### Additional Resource Requirements #### Application Gateway - **SKU**: WAF_v2 - **Capacity**: 2 instances - **vCPUs**: ~4 vCPUs (managed service) #### Storage Accounts - **Backup Storage**: Standard_LRS (no vCPU requirement) - **Shared Storage**: Standard_LRS (no vCPU requirement) #### Key Vault - **Tier**: Standard (no vCPU requirement) #### Log Analytics Workspace - **SKU**: PerGB2018 (no vCPU requirement) ## Current Deployment (Quota-Constrained) Due to quota limitations, the current deployment uses: | Node Pool | Nodes | vCPUs | Status | |-----------|-------|-------|--------| | System | 1 | 2 | ✅ Deployed | | Validators | 1 | 4 | ✅ Deployed | | Sentries | 0 | 0 | ❌ Disabled (needs 12+ vCPUs) | | RPC | 0 | 0 | ❌ Disabled (needs 24+ vCPUs) | | **Total** | **2** | **6** | **Limited** | ## Quota Increase Request ### Required Quota Increases 1. **Standard DSv3 Family vCPUs**: Minimum 60 vCPUs (recommended: 150 for auto-scaling headroom) ### How to Check Current Quotas ```bash # Check current vCPU quotas for West Europe az vm list-usage --location westeurope --output table # Check specific VM family quotas az quota show \ --scope subscriptions/6d3c4263-bba9-497c-8843-eae6c4e87192 \ --resource-name "standardDSv3Family" \ --location westeurope \ --query "{currentValue:properties.currentValue, limit:properties.limit}" \ --output table ``` ### How to Request Quota Increase #### Option 1: Azure Portal 1. Navigate to: https://portal.azure.com 2. Go to **Subscriptions** → Select subscription `6d3c4263-bba9-497c-8843-eae6c4e87192` 3. Click **Usage + quotas** 4. Filter by location: **West Europe** 5. Search for **Standard DSv3 Family** 6. Click **Request increase** 7. Enter new limit: **150 vCPUs** (recommended) 8. Provide justification: "DeFi Oracle Meta Mainnet production deployment requiring 58+ vCPUs for AKS node pools with auto-scaling capability" #### Option 2: Azure CLI ```bash # Create quota increase request az quota update \ --scope subscriptions/6d3c4263-bba9-497c-8843-eae6c4e87192 \ --resource-name "standardDSv3Family" \ --location westeurope \ --limit 150 ``` #### Option 3: REST API ```bash # Get subscription ID SUBSCRIPTION_ID="6d3c4263-bba9-497c-8843-eae6c4e87192" LOCATION="westeurope" QUOTA_NAME="standardDSv3Family" NEW_LIMIT=150 # Note: Quota increases typically require approval via Azure Portal # This is a reference for the API endpoint curl -X PUT \ "https://management.azure.com/subscriptions/${SUBSCRIPTION_ID}/providers/Microsoft.Compute/locations/${LOCATION}/quotas/${QUOTA_NAME}?api-version=2021-07-01" \ -H "Authorization: Bearer $(az account get-access-token --query accessToken -o tsv)" \ -H "Content-Type: application/json" \ -d "{\"properties\":{\"limit\":${NEW_LIMIT}}}" ``` ## Recommended Quota Limits For production deployment with auto-scaling: | Resource | Recommended Limit | Minimum Required | |----------|-------------------|------------------| | **Standard DSv3 Family vCPUs** | 150 | 60 | | **AKS Clusters** | 10 | 1 | | **Public IP Addresses** | 20 | 5 | | **Load Balancers** | 20 | 2 | | **Network Security Groups** | 50 | 10 | | **Storage Accounts** | 100 | 5 | ## After Quota Increase Once quota is increased, update `terraform/terraform.tfvars`: ```hcl node_count = { system = 3 # Restore from 1 validators = 4 # Restore from 1 sentries = 3 # Enable from 0 rpc = 3 # Enable from 0 } ``` Then apply: ```bash cd terraform terraform apply ``` ## Monitoring Quota Usage ```bash # Check current usage az vm list-usage --location westeurope --output table # Monitor quota usage over time az monitor metrics list \ --resource /subscriptions/6d3c4263-bba9-497c-8843-eae6c4e87192 \ --metric "QuotaUsage" \ --location westeurope ``` ## Support Contacts - **Azure Support**: https://portal.azure.com/#blade/Microsoft_Azure_Support/HelpAndSupportBlade - **Quota Increase Requests**: Typically approved within 24-48 hours - **Emergency Quota**: Contact Azure Support for expedited requests