- 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.
117 lines
3.3 KiB
Markdown
117 lines
3.3 KiB
Markdown
# 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
|
||
|
||
1. **No Quota Increase Required**: Uses existing quotas
|
||
2. **Geographic Redundancy**: 6 regions provide high availability
|
||
3. **Cost Optimization**: Uses cost-effective VM families
|
||
4. **Scalability**: Easy to add more regions or nodes
|
||
5. **Performance**: Lower latency for regional users
|
||
|
||
## Deployment Commands
|
||
|
||
```bash
|
||
# 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
|
||
|
||
```bash
|
||
# 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
|
||
|
||
1. ✅ Multi-region configuration created
|
||
2. ✅ Quota requirements documented
|
||
3. ⏳ Deploy infrastructure across 6 regions
|
||
4. ⏳ Configure cross-region networking
|
||
5. ⏳ Set up global load balancing
|
||
6. ⏳ Deploy Besu network nodes
|
||
|
||
|