- 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.
3.3 KiB
3.3 KiB
Exact Quota Requirements - Multi-Region Deployment
Subscription Information
- Subscription ID:
6d3c4263-bba9-497c-8843-eae6c4e87192 - Subscription Name:
MIM4U - Tenant ID:
fb97e99d-3e94-4686-bfde-4bf4062e05f3
6-Region Deployment Strategy
Per-Region Quota Requirements
Each region requires:
- Standard Dv2 Family: 10 vCPUs (at limit)
- Standard Dsv6 Family: 8 vCPUs (within limit)
Regional Breakdown
| Region | Location | Code | Dv2 Quota | Dsv6 Quota | Total vCPUs |
|---|---|---|---|---|---|
| West Europe | westeurope | we | 10/10 | 8/10 | 18 |
| North Europe | northeurope | ne | 10/10 | 8/10 | 18 |
| France Central | francecentral | fc | 10/10 | 8/10 | 18 |
| UK South | uksouth | uk | 10/10 | 8/10 | 18 |
| Sweden Central | swedencentral | sc | 10/10 | 8/10 | 18 |
| Norway East | norwayeast | no | 10/10 | 8/10 | 18 |
| TOTAL | 60 | 48 | 108 |
VM Family Distribution
Per-Region Configuration
| Node Pool | VM Size | Family | vCPUs | Quota Family |
|---|---|---|---|---|
| System | Standard_D2_v2 | Dv2 | 2 | Dv2 |
| Validators | Standard_D4_v2 | Dv2 | 4 | Dv2 |
| Sentries | Standard_D4_v2 | Dv2 | 4 | Dv2 |
| RPC | Standard_D8s_v6 | Dsv6 | 8 | Dsv6 |
| Total | 18 | Dv2: 10, Dsv6: 8 |
Available Quotas (Per Region)
All 6 regions have the same quota availability:
| VM Family | Available vCPUs | Used in Deployment |
|---|---|---|
| Standard Dv2 Family | 10 | 10 ✅ |
| Standard Dsv6 Family | 10 | 8 ✅ |
| Standard D Family | 10 | 0 (available) |
| Standard Av2 Family | 10 | 0 (available) |
| Standard Dv2 Promo Family | 10 | 0 (available) |
Total Deployment Summary
Resources Across All Regions
- Total Regions: 6
- Total Nodes: 24 (4 per region)
- Total vCPUs: 108 (18 per region)
- Total AKS Clusters: 6 (1 per region)
- Total Resource Groups: 6 (1 per region)
Quota Utilization
- Dv2 Family: 60 vCPUs total (10 per region × 6 regions)
- Dsv6 Family: 48 vCPUs total (8 per region × 6 regions)
- All within available quotas ✅
Benefits of This Approach
- No Quota Increase Required: Uses existing quotas
- Geographic Redundancy: 6 regions provide high availability
- Cost Optimization: Uses cost-effective VM families
- Scalability: Easy to add more regions or nodes
- Performance: Lower latency for regional users
Deployment Commands
# Enable multi-region deployment
cd terraform
cp terraform.tfvars.multi-region terraform.tfvars
# Initialize Terraform
terraform init
# Plan deployment
terraform plan -out=tfplan
# Deploy all 6 regions
terraform apply tfplan
Monitoring Quota Usage
# Check quotas for a specific region
az vm list-usage --location westeurope --output table
# Monitor quota usage across all regions
for region in westeurope northeurope francecentral uksouth swedencentral norwayeast; do
echo "=== $region ==="
az vm list-usage --location $region --output table | grep -E "(Dv2|Dsv6)"
done
Next Steps
- ✅ Multi-region configuration created
- ✅ Quota requirements documented
- ⏳ Deploy infrastructure across 6 regions
- ⏳ Configure cross-region networking
- ⏳ Set up global load balancing
- ⏳ Deploy Besu network nodes