Files
proxmox/docs/04-configuration/CONFIGURATION_DECISION_TREE.md
defiQUG cb47cce074 Complete markdown files cleanup and organization
- Organized 252 files across project
- Root directory: 187 → 2 files (98.9% reduction)
- Moved configuration guides to docs/04-configuration/
- Moved troubleshooting guides to docs/09-troubleshooting/
- Moved quick start guides to docs/01-getting-started/
- Moved reports to reports/ directory
- Archived temporary files
- Generated comprehensive reports and documentation
- Created maintenance scripts and guides

All files organized according to established standards.
2026-01-06 01:46:25 -08:00

7.0 KiB

Configuration Decision Tree

Last Updated: 2025-01-20
Document Version: 1.0
Status: Active Documentation


Overview

This document provides a decision tree to help determine the correct configuration approach based on your requirements.


Configuration Decision Tree Diagram

flowchart TD
    Start[Configuration Needed] --> WhatService{What Service?}
    
    WhatService -->|Network| NetworkConfig[Network Configuration]
    WhatService -->|Blockchain| BlockchainConfig[Blockchain Configuration]
    WhatService -->|Cloudflare| CloudflareConfig[Cloudflare Configuration]
    WhatService -->|Proxmox| ProxmoxConfig[Proxmox Configuration]
    
    NetworkConfig --> WhichVLAN{Which VLAN?}
    WhichVLAN -->|Management| VLAN11[VLAN 11: MGMT-LAN<br/>192.168.11.0/24]
    WhichVLAN -->|Besu Validator| VLAN110[VLAN 110: BESU-VAL<br/>10.110.0.0/24]
    WhichVLAN -->|Besu RPC| VLAN112[VLAN 112: BESU-RPC<br/>10.112.0.0/24]
    WhichVLAN -->|CCIP| CCIPVLAN{CCIP Type?}
    CCIPVLAN -->|Commit| VLAN132[VLAN 132: CCIP-COMMIT<br/>10.132.0.0/24]
    CCIPVLAN -->|Execute| VLAN133[VLAN 133: CCIP-EXEC<br/>10.133.0.0/24]
    CCIPVLAN -->|RMN| VLAN134[VLAN 134: CCIP-RMN<br/>10.134.0.0/24]
    
    BlockchainConfig --> NodeType{Node Type?}
    NodeType -->|Validator| ValidatorConfig[Validator Config<br/>Discovery: false<br/>Permissioning: true<br/>APIs: ETH,NET,WEB3,QBFT]
    NodeType -->|Sentry| SentryConfig[Sentry Config<br/>Discovery: true<br/>Permissioning: true<br/>APIs: ETH,NET,WEB3]
    NodeType -->|RPC| RPCType{Public or Private?}
    RPCType -->|Public| PublicRPC[Public RPC Config<br/>Discovery: true<br/>Permissioning: false<br/>APIs: ETH,NET,WEB3]
    RPCType -->|Private| PrivateRPC[Private RPC Config<br/>Discovery: false<br/>Permissioning: true<br/>APIs: ETH,NET,WEB3,ADMIN,DEBUG]
    
    CloudflareConfig --> TunnelType{Tunnel Type?}
    TunnelType -->|HTTP| HTTPTunnel[HTTP Tunnel<br/>Route to Nginx<br/>192.168.11.21:80]
    TunnelType -->|WebSocket| WSTunnel[WebSocket Tunnel<br/>Direct to RPC Node<br/>192.168.11.252:443]
    
    ProxmoxConfig --> ResourceType{Resource Type?}
    ResourceType -->|Container| ContainerConfig[LXC Container<br/>Use pct commands]
    ResourceType -->|VM| VMConfig[Virtual Machine<br/>Use qm commands]
    
    VLAN11 --> UseTemplate1[Use Network Template]
    VLAN110 --> UseTemplate2[Use Network Template]
    VLAN112 --> UseTemplate3[Use Network Template]
    VLAN132 --> UseTemplate4[Use Network Template]
    VLAN133 --> UseTemplate5[Use Network Template]
    VLAN134 --> UseTemplate6[Use Network Template]
    
    ValidatorConfig --> UseBesuTemplate[Use Besu Template]
    SentryConfig --> UseBesuTemplate
    PublicRPC --> UseBesuTemplate
    PrivateRPC --> UseBesuTemplate
    
    HTTPTunnel --> UseCloudflareTemplate[Use Cloudflare Template]
    WSTunnel --> UseCloudflareTemplate
    
    ContainerConfig --> UseProxmoxTemplate[Use Proxmox Template]
    VMConfig --> UseProxmoxTemplate
    
    UseTemplate1 --> ConfigComplete[Configuration Complete]
    UseTemplate2 --> ConfigComplete
    UseTemplate3 --> ConfigComplete
    UseTemplate4 --> ConfigComplete
    UseTemplate5 --> ConfigComplete
    UseTemplate6 --> ConfigComplete
    UseBesuTemplate --> ConfigComplete
    UseCloudflareTemplate --> ConfigComplete
    UseProxmoxTemplate --> ConfigComplete

Quick Decision Paths

Path 1: Network Configuration

Question: Which VLAN do you need?

Decision Tree:

Need Management Network? → VLAN 11 (192.168.11.0/24)
Need Besu Validator Network? → VLAN 110 (10.110.0.0/24)
Need Besu RPC Network? → VLAN 112 (10.112.0.0/24)
Need CCIP Network? → Which type?
  ├─ Commit → VLAN 132 (10.132.0.0/24)
  ├─ Execute → VLAN 133 (10.133.0.0/24)
  └─ RMN → VLAN 134 (10.134.0.0/24)

Template: Use PROXMOX_NETWORK_TEMPLATE.conf


Path 2: Blockchain Node Configuration

Question: What type of Besu node?

Decision Tree:

Validator Node? → Discovery: false, Permissioning: true, APIs: ETH,NET,WEB3,QBFT
Sentry Node? → Discovery: true, Permissioning: true, APIs: ETH,NET,WEB3
RPC Node? → Public or Private?
  ├─ Public → Discovery: true, Permissioning: false, APIs: ETH,NET,WEB3
  └─ Private → Discovery: false, Permissioning: true, APIs: ETH,NET,WEB3,ADMIN,DEBUG

Template: Use BESU_NODE_TEMPLATE.toml


Path 3: Cloudflare Tunnel Configuration

Question: What type of service?

Decision Tree:

HTTP Service? → Route to Central Nginx (192.168.11.21:80)
WebSocket Service? → Route directly to service (bypass Nginx)

Template: Use CLOUDFLARE_TUNNEL_TEMPLATE.yaml


Path 4: Router Configuration

Question: What router configuration needed?

Decision Tree:

WAN Configuration? → Configure WAN1/WAN2 interfaces
VLAN Configuration? → Create VLAN interfaces
NAT Configuration? → Configure egress NAT pools
Firewall Configuration? → Set up firewall rules

Template: Use ER605_ROUTER_TEMPLATE.yaml


Configuration Templates Reference

Configuration Type Template File Use Case
ER605 Router ER605_ROUTER_TEMPLATE.yaml Router WAN, VLAN, NAT configuration
Proxmox Network PROXMOX_NETWORK_TEMPLATE.conf Proxmox host network bridge configuration
Cloudflare Tunnel CLOUDFLARE_TUNNEL_TEMPLATE.yaml Cloudflare tunnel ingress rules
Besu Node BESU_NODE_TEMPLATE.toml Besu blockchain node configuration

Template Location: ../04-configuration/templates/


Step-by-Step Configuration Guide

Step 1: Identify Requirements

Questions to answer:

  • What service are you configuring?
  • What network segment is needed?
  • What security level is required?
  • What access level is needed?

Step 2: Select Appropriate Template

Based on requirements:

  • Choose template from templates directory
  • Review template comments
  • Understand placeholder values

Step 3: Customize Template

Actions:

  • Replace all <PLACEHOLDER> values
  • Adjust configuration for specific needs
  • Verify syntax and format

Step 4: Apply Configuration

Actions:

  • Backup existing configuration
  • Apply new configuration
  • Test and verify
  • Document changes


Last Updated: 2025-01-20
Review Cycle: Quarterly