Files
smom-dbis-138/docs/azure/QUOTA_REQUIREMENTS.md
defiQUG 1fb7266469 Add Oracle Aggregator and CCIP Integration
- Introduced Aggregator.sol for Chainlink-compatible oracle functionality, including round-based updates and access control.
- Added OracleWithCCIP.sol to extend Aggregator with CCIP cross-chain messaging capabilities.
- Created .gitmodules to include OpenZeppelin contracts as a submodule.
- Developed a comprehensive deployment guide in NEXT_STEPS_COMPLETE_GUIDE.md for Phase 2 and smart contract deployment.
- Implemented Vite configuration for the orchestration portal, supporting both Vue and React frameworks.
- Added server-side logic for the Multi-Cloud Orchestration Portal, including API endpoints for environment management and monitoring.
- Created scripts for resource import and usage validation across non-US regions.
- Added tests for CCIP error handling and integration to ensure robust functionality.
- Included various new files and directories for the orchestration portal and deployment scripts.
2025-12-12 14:57:48 -08:00

197 lines
5.5 KiB
Markdown

# 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