<!-- HISTORICAL: This document contains historical VMID ranges (1100-1122) and is kept for reference only. Current ranges: Validators 1000-1004, Sentries 1500-1503, RPC 2500-2502 -->
# VMID Allocation Plan

**Updated**: Large ranges with significant spacing for expansion

## Allocation Summary

| Category | VMID Range | Count | Reserved Range | Notes |
|----------|-----------|-------|---------------|-------|
| **Besu Validators** | 1100-1104 | 5 | 1100-1299 | Besu network allocation (200 VMIDs) |
| **Besu Sentries** | 1110-1113 | 4 | 1100-1299 | Besu network allocation |
| **Besu RPC** | 1120-1122 | 3 | 1100-1299 | Besu network allocation |
| **Besu Services** | 1130+ | 4+ | 1100-1299 | oracle-publisher, keeper, etc. |
| **Besu Monitoring** | 1140+ | 5+ | 1100-1299 | Monitoring stack |
| **Blockscout** | 2000 | 1 | 2000-2099 | Blockchain explorer (100 VMIDs) |
| **Cacti** | 2400 | 1 | 2400-2499 | Hyperledger Cacti (100 VMIDs) |
| **Chainlink CCIP** | 3200 | 1 | 3200-3299 | CCIP Monitor (100 VMIDs) |
| **Fabric** | 4500 | 1 | 4500-4599 | Hyperledger Fabric (100 VMIDs) |
| **Firefly** | 4700 | 1 | 4700-4799 | Hyperledger Firefly (100 VMIDs) |
| **Indy** | 8000 | 1 | 8000-8999 | Hyperledger Indy (1000 VMIDs) |

**Total Initial Containers**: ~26  
**Total Reserved VMID Range**: 1100-8999 (7900 VMIDs available)  
**Available for Expansion**: Significant capacity in each range

## Detailed Breakdown

### Besu Network (1100-1299) - 200 VMIDs

#### Validators (1100-1104) - 5 nodes
- **VMID 1100**: besu-validator-1
- **VMID 1101**: besu-validator-2
- **VMID 1102**: besu-validator-3
- **VMID 1103**: besu-validator-4
- **VMID 1104**: besu-validator-5
- **Resources**: 8GB RAM, 4 cores, 100GB disk each
- **Available for expansion**: 1105-1109 (5 VMIDs)

#### Sentries (1110-1113) - 4 nodes
- **VMID 1110**: besu-sentry-2
- **VMID 1111**: besu-sentry-3
- **VMID 1112**: besu-sentry-4
- **VMID 1113**: besu-sentry-5
- **Resources**: 4GB RAM, 2 cores, 100GB disk each
- **Available for expansion**: 1114-1119 (6 VMIDs)

#### RPC Nodes (1120-1122) - 3 nodes
- **VMID 1120**: besu-rpc-1
- **VMID 1121**: besu-rpc-2
- **VMID 1122**: besu-rpc-3
- **Resources**: 16GB RAM, 4 cores, 200GB disk each
- **Available for expansion**: 1123-1129 (7 VMIDs)

#### Services (1130+) - 4+ nodes
- **VMID 1130**: oracle-publisher-1
- **VMID 1131**: keeper-1
- **VMID 1132**: financial-tokenization-1
- **VMID 1133+**: Additional services
- **Resources**: 2GB RAM, 2 cores, 20GB disk each
- **Available for expansion**: 1134-1139+ (many VMIDs)

#### Monitoring (1140+) - 5+ nodes
- **VMID 1140**: monitoring-stack-1
- **VMID 1141-1144+**: Additional monitoring nodes
- **Resources**: 4GB RAM, 4 cores, 50GB disk each
- **Available for expansion**: 1145-1299 (155+ VMIDs)

### Blockscout Explorer (2000-2099) - 100 VMIDs

#### Explorer (2000) - 1 node
- **VMID 2000**: blockscout-1
- **Resources**: 8GB RAM, 4 cores, 100GB disk
- **Available for expansion**: 2001-2099 (99 VMIDs)

### Cacti (2400-2499) - 100 VMIDs

#### Cacti (2400) - 1 node
- **VMID 2400**: cacti-1
- **Resources**: 4GB RAM, 2 cores, 50GB disk
- **Available for expansion**: 2401-2499 (99 VMIDs)

### Chainlink CCIP (3200-3299) - 100 VMIDs

#### CCIP Monitor (3200) - 1 node
- **VMID 3200**: ccip-monitor-1
- **Resources**: 2GB RAM, 2 cores, 20GB disk
- **Available for expansion**: 3201-3299 (99 VMIDs)

### Fabric (4500-4599) - 100 VMIDs

#### Fabric (4500) - 1 node
- **VMID 4500**: fabric-1
- **Resources**: 8GB RAM, 4 cores, 100GB disk
- **Available for expansion**: 4501-4599 (99 VMIDs)

### Firefly (4700-4799) - 100 VMIDs

#### Firefly (4700) - 1 node
- **VMID 4700**: firefly-1
- **Resources**: 4GB RAM, 2 cores, 50GB disk
- **Available for expansion**: 4701-4799 (99 VMIDs)

### Indy (8000-8999) - 1000 VMIDs

#### Indy (8000) - 1 node
- **VMID 8000**: indy-1
- **Resources**: 8GB RAM, 4 cores, 100GB disk
- **Available for expansion**: 8001-8999 (999 VMIDs)

## Spacing Rationale

- **Large ranges** (100-1000 VMIDs) provide:
  - Massive room for future expansion
  - Clear separation for easier management
  - Flexibility to add many nodes without renumbering
  - Better organization across different service types
  - No conflicts between service categories

## Configuration Variables

All VMID ranges are defined in `config/proxmox.conf`:

```bash
VMID_VALIDATORS_START=1100    # Besu validators
VMID_SENTRIES_START=1110      # Besu sentries
VMID_RPC_START=1120           # Besu RPC
VMID_SERVICES_START=1130      # Besu services
VMID_MONITORING_START=1140    # Besu monitoring
VMID_EXPLORER_START=2000      # Blockscout
VMID_CACTI_START=2400         # Cacti
VMID_CCIP_START=3200          # Chainlink CCIP
VMID_FABRIC_START=4500        # Fabric
VMID_FIREFLY_START=4700       # Firefly
VMID_INDY_START=8000          # Indy
```

## Range Summary

| Service Category | Start | End | Total VMIDs | Initial Usage | Available |
|-----------------|-------|-----|-------------|---------------|-----------|
| Besu Network | 1100 | 1299 | 200 | ~17 | ~183 |
| Blockscout | 2000 | 2099 | 100 | 1 | 99 |
| Cacti | 2400 | 2499 | 100 | 1 | 99 |
| Chainlink CCIP | 3200 | 3299 | 100 | 1 | 99 |
| Fabric | 4500 | 4599 | 100 | 1 | 99 |
| Firefly | 4700 | 4799 | 100 | 1 | 99 |
| Indy | 8000 | 8999 | 1000 | 1 | 999 |
| **Total** | **1100** | **8999** | **1700** | **~26** | **~1674** |

## Migration from Previous Allocation

**Previous Allocation (200-263)**:
- Validators: 200-204
- Sentries: 210-213
- RPC: 220-222
- Services: 230-233
- Monitoring: 240-244
- Explorer: 250
- Hyperledger: 260-263

**New Allocation (1100-8999)**:
- Validators: 1100-1104
- Sentries: 1110-1113
- RPC: 1120-1122
- Services: 1130+
- Monitoring: 1140+
- Explorer: 2000
- Cacti: 2400
- CCIP: 3200
- Fabric: 4500
- Firefly: 4700
- Indy: 8000

**Note**: All previous containers have been removed. New deployments will use the new ranges.

