- 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.
4.2 KiB
4.2 KiB
Optimized Deployment - Maximum Validators (48 Validators)
Strategy: Maximum Validators for Best Consensus Resilience
This configuration maximizes the number of validators to get the "biggest bang" from the 240 vCPU quota.
Configuration
Per-Region Resources (10 vCPUs)
- System Nodes: 3 × Standard_D2s_v3 = 6 vCPUs
- Validator Nodes: 2 × Standard_B2s = 4 vCPUs
- Sentry Nodes: 0 (deploy as pods on system nodes - no quota needed)
- Total: 10 vCPUs per region ✅
Total Resources (24 Regions)
- System Nodes: 72 (3 × 24 regions) = 144 vCPUs
- Validator Nodes: 48 (2 × 24 regions) = 96 vCPUs
- Sentry Nodes: 0 (deploy as pods - no quota)
- Total: 120 nodes, 240 vCPUs ✅
Benefits of 48 Validators
Consensus Resilience
- Current (24 validators): 13 minimum for consensus, 11 can fail
- Optimized (48 validators): 25 minimum for consensus, 23 can fail
- Improvement: 2x fault tolerance!
Network Security
- Geographic Distribution: 2 validators per region = better redundancy
- Attack Resistance: Much harder to compromise 25+ validators
- Decentralization: More validators = better network decentralization
Performance
- Block Production: More validators = better block distribution
- Network Resilience: Can lose entire regions and still maintain consensus
- Fault Tolerance: Can handle 23 validator failures (vs 11 previously)
Sentry Strategy
Deploy Sentries as Pods
- No Quota Needed: Sentries run on system nodes
- Cost Effective: No additional VM costs
- Flexible: Can scale sentries independently
- Resource Sharing: System nodes have capacity for sentry pods
Sentry Pod Configuration
- Deployment: Kubernetes pods on system nodes
- Resources: 1-2 vCPUs, 2-4GB RAM per sentry
- Count: 1-2 sentries per region (flexible)
- Total: 24-48 sentry pods (no quota impact)
Cost Analysis
Per Region
- System Nodes: 3 × Standard_D2s_v3 = ~$210/month
- Validator Nodes: 2 × Standard_B2s = ~$30/month
- Sentry Pods: $0 (runs on system nodes)
- Total per Region: ~$240/month
Total (24 Regions)
- System Nodes: 72 × Standard_D2s_v3 = ~$5,040/month
- Validator Nodes: 48 × Standard_B2s = ~$720/month
- Sentry Pods: $0
- Total: ~$5,760/month
Comparison
| Metric | 24 Validators | 48 Validators | Improvement |
|---|---|---|---|
| Validators | 24 | 48 | 2x |
| Fault Tolerance | 11 failures | 23 failures | 2x |
| Consensus Minimum | 13 | 25 | Better security |
| Sentries | 24 VMs | 24-48 pods | Cost savings |
| Total Cost | ~$5,760/month | ~$5,760/month | Same cost |
Network Architecture
Validators (48)
- Role: Consensus and block production
- Distribution: 2 per region
- Peering: Via sentry pods (private)
- Consensus: QBFT 2.0 (48 validators = 25 minimum for consensus)
Sentries (24-48 Pods)
- Role: P2P relay and protection
- Distribution: 1-2 pods per region
- Deployment: Kubernetes pods on system nodes
- Public Access: Yes (P2P port 30303)
System Nodes (72)
- Role: Kubernetes system workloads + sentry pods
- Distribution: 3 per region
- Workloads: Monitoring, logging, ingress, sentries
Deployment Strategy
Phase 1: Foundation (Complete)
- ✅ Cloud for Sovereignty foundation deployed
Phase 2: AKS Clusters
- Deploy AKS clusters in 24 regions
- 3 system nodes per cluster
- Total: 72 system nodes
Phase 3: Validator Node Pools
- Deploy validator node pools in 24 regions
- 2 validators per region
- Total: 48 validator nodes
Phase 4: Sentry Pods
- Deploy sentry pods on system nodes
- 1-2 sentries per region
- Total: 24-48 sentry pods (no quota)
Phase 5: Besu Network
- Deploy Besu validators on validator nodes
- Deploy Besu sentries as pods
- Configure peering between regions
- Start consensus network
Recommendation
✅ Use 48 Validators Configuration - This gives the "biggest bang" by:
- Doubling validator count (24 → 48)
- Doubling fault tolerance (11 → 23 failures)
- Better consensus security (25 minimum vs 13)
- Same cost (~$5,760/month)
- Sentries as pods (no quota, flexible scaling)