Files
smom-dbis-138/terraform/MULTI_REGION_QUOTA_BREAKDOWN.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

4.4 KiB
Raw Permalink Blame History

Multi-Region Quota Breakdown

Current Design (Dplsv6, 37 Regions, ≤ 10 vCPUs/Region)

  • Regions: 37 nonUS commercial regions total
    • West Europe: admin/controlplane only (no workload node pools)
    • 36 workload regions: each runs System, Validator, and RPC pools
  • VM family: All AKS node pools use Dplsv6 family
    • Standard_D2plsv6 (2 vCPUs) for System, Validator, RPC, Sentry pools
  • Perregion node counts (workload regions):
    • Default: system = 1, validators = 1, sentries = 0, rpc = 13 nodes × 2 vCPUs = 6 vCPUs/region
    • Boosted regions (northeurope, belgiumcentral): system = 2, validators = 2, sentries = 0, rpc = 15 nodes × 2 vCPUs = 10 vCPUs/region
  • Quota alignment:
    • Every workload region stays ≤ 10 vCPUs for the Standard Dplsv6 Family vCPUs quota.
    • No sentry node pools are enabled by default; they can be turned on later without changing the SKU.

The sections below describe earlier quota exploration and mixedfamily designs (Dv2, Dsv6, DSv3). They are kept for historical context but do not reflect the finalized D2plsv6 design implemented in Terraform.

Historical 6-Region Deployment Strategy (Dv2/Dsv6/DSv3)

6-Region Deployment Strategy

Region Distribution

Region Nodes vCPUs VM Families Used
West Europe 4 18 DSv3 (2), Dv2 (12), Dsv6 (4)
North Europe 4 18 Dv2 (12), Dsv6 (4), DSv3 (2)
France Central 4 18 Dv2 (12), Dsv6 (4), DSv3 (2)
UK South 4 18 Dv2 (14), Dsv6 (4)
Sweden Central 4 18 Dv2 (14), Dsv6 (4)
Norway East 4 18 Dv2 (14), Dsv6 (4)
TOTAL 24 108 Distributed across families

Per-Region Quota Usage

West Europe

  • Standard DSv3 Family: 2 vCPUs (2/10 used)
  • Standard Dv2 Family: 12 vCPUs (12/10 used) ⚠️
  • Standard Dsv6 Family: 4 vCPUs (4/10 used)
  • Note: Dv2 usage exceeds quota, adjust to use D Family or Dsv6

North Europe

  • Standard Dv2 Family: 12 vCPUs (12/10 used) ⚠️
  • Standard Dsv6 Family: 4 vCPUs (4/10 used)
  • Standard DSv3 Family: 2 vCPUs (2/10 used)
  • Note: Dv2 usage exceeds quota, adjust to use D Family or Dsv6

Other Regions (France Central, UK South, Sweden Central, Norway East)

  • Standard Dv2 Family: 14 vCPUs (14/10 used) ⚠️
  • Standard Dsv6 Family: 4 vCPUs (4/10 used)
  • Note: Dv2 usage exceeds quota, adjust to use D Family or Dsv6

Adjusted Configuration (Within Quotas)

Each region should use:

  • System: 1 node × Standard_D2_v2 (2 vCPUs) - Dv2 Family
  • Validators: 1 node × Standard_D4_v2 (4 vCPUs) - Dv2 Family
  • Sentries: 1 node × Standard_D4s_v6 (4 vCPUs) - Dsv6 Family
  • RPC: 1 node × Standard_D8_v2 (8 vCPUs) - Dv2 Family

Per Region: 18 vCPUs

  • Dv2 Family: 14 vCPUs (exceeds 10 limit) ⚠️
  • Dsv6 Family: 4 vCPUs (within 10 limit)

Final Optimized Configuration

To stay within quotas, use:

  • System: Standard_D2s_v6 (2 vCPUs) - Dsv6 Family
  • Validators: Standard_D4_v2 (4 vCPUs) - Dv2 Family
  • Sentries: Standard_D4s_v6 (4 vCPUs) - Dsv6 Family
  • RPC: Standard_D8s_v6 (8 vCPUs) - Dsv6 Family

Per Region: 18 vCPUs

  • Dv2 Family: 4 vCPUs (within 10 limit)
  • Dsv6 Family: 14 vCPUs (exceeds 10 limit) ⚠️

Alternative: Use D Family

  • System: Standard_D2_v2 (2 vCPUs) - Dv2 Family
  • Validators: Standard_D4_v2 (4 vCPUs) - Dv2 Family
  • Sentries: Standard_D4_v2 (4 vCPUs) - Dv2 Family
  • RPC: Standard_D8_v2 (8 vCPUs) - Dv2 Family

Per Region: 18 vCPUs

  • Dv2 Family: 18 vCPUs (exceeds 10 limit) ⚠️

Best Solution: Mix Families Per Node Pool

  • System: Standard_D2_v2 (2 vCPUs) - Dv2 Family
  • Validators: Standard_D4_v2 (4 vCPUs) - Dv2 Family
  • Sentries: Standard_D4s_v6 (4 vCPUs) - Dsv6 Family
  • RPC: Standard_D8s_v6 (8 vCPUs) - Dsv6 Family

Per Region: 18 vCPUs

  • Dv2 Family: 6 vCPUs (within 10 limit)
  • Dsv6 Family: 12 vCPUs (exceeds 10 limit) ⚠️

Final Optimized: Use Multiple Families

  • System: Standard_D2_v2 (2 vCPUs) - Dv2 Family
  • Validators: Standard_D4_v2 (4 vCPUs) - Dv2 Family
  • Sentries: Standard_D4_v2 (4 vCPUs) - Dv2 Family
  • RPC: Standard_D8s_v6 (8 vCPUs) - Dsv6 Family

Per Region: 18 vCPUs

  • Dv2 Family: 10 vCPUs (at limit)
  • Dsv6 Family: 8 vCPUs (within 10 limit)

This configuration works within quotas!