updating to match everything in my homelab.
This commit is contained in:
66
diagrams/cluster-topology.mmd
Normal file
66
diagrams/cluster-topology.mmd
Normal file
@@ -0,0 +1,66 @@
|
||||
%% Cluster Node Topology
|
||||
%% Related: ADR-0035, ADR-0011, ADR-0037
|
||||
|
||||
flowchart TB
|
||||
subgraph Cluster["Homelab Kubernetes Cluster (14 nodes)"]
|
||||
subgraph ControlPlane["👑 Control Plane (Companions of the Hall)"]
|
||||
Bruenor["bruenor<br/>Intel N100"]
|
||||
Catti["catti<br/>Intel N100"]
|
||||
Storm["storm<br/>Intel N100"]
|
||||
end
|
||||
|
||||
subgraph GPUNodes["🧙 Wizards (GPU Workers)"]
|
||||
Khelben["khelben<br/>Radeon 8060S 64GB<br/>🎮 Primary AI"]
|
||||
Elminster["elminster<br/>RTX 2070 8GB<br/>🎮 CUDA"]
|
||||
Drizzt["drizzt<br/>Radeon 680M<br/>🎮 ROCm"]
|
||||
Danilo["danilo<br/>Intel Arc A770<br/>🎮 Intel"]
|
||||
Regis["regis<br/>NVIDIA GPU<br/>🎮 CUDA"]
|
||||
end
|
||||
|
||||
subgraph CPUNodes["⚔️ Fighters (CPU Workers)"]
|
||||
Wulfgar["wulfgar<br/>Intel x86_64"]
|
||||
end
|
||||
|
||||
subgraph ARMWorkers["🗡️ Rogues (ARM64 Raspberry Pi)"]
|
||||
Durnan["durnan<br/>Pi 4 8GB"]
|
||||
Elaith["elaith<br/>Pi 4 8GB"]
|
||||
Jarlaxle["jarlaxle<br/>Pi 4 8GB"]
|
||||
Mirt["mirt<br/>Pi 4 8GB"]
|
||||
Volo["volo<br/>Pi 4 8GB"]
|
||||
end
|
||||
end
|
||||
|
||||
subgraph Workloads["Workload Placement"]
|
||||
AIInference["AI Inference<br/>→ Khelben"]
|
||||
MLTraining["ML Training<br/>→ GPU Nodes"]
|
||||
EdgeServices["Lightweight Services<br/>→ ARM64"]
|
||||
General["General Workloads<br/>→ CPU + ARM64"]
|
||||
end
|
||||
|
||||
subgraph Storage["Storage Affinity"]
|
||||
Longhorn["Longhorn<br/>x86_64 only"]
|
||||
NFS["NFS<br/>All nodes"]
|
||||
end
|
||||
|
||||
AIInference -.-> Khelben
|
||||
MLTraining -.-> GPUNodes
|
||||
EdgeServices -.-> ARMWorkers
|
||||
General -.-> CPUNodes
|
||||
General -.-> ARMWorkers
|
||||
|
||||
Longhorn -.->|Excluded| ARMWorkers
|
||||
NFS --> Cluster
|
||||
|
||||
classDef control fill:#2563eb,stroke:#1d4ed8,color:#fff
|
||||
classDef gpu fill:#7c3aed,stroke:#5b21b6,color:#fff
|
||||
classDef cpu fill:#dc2626,stroke:#b91c1c,color:#fff
|
||||
classDef arm fill:#059669,stroke:#047857,color:#fff
|
||||
classDef workload fill:#9f7aea,stroke:#805ad5,color:#fff
|
||||
classDef storage fill:#ed8936,stroke:#dd6b20,color:#fff
|
||||
|
||||
class Bruenor,Catti,Storm control
|
||||
class Khelben,Elminster,Drizzt,Danilo,Regis gpu
|
||||
class Wulfgar cpu
|
||||
class Durnan,Elaith,Jarlaxle,Mirt,Volo arm
|
||||
class AIInference,MLTraining,EdgeServices,General workload
|
||||
class Longhorn,NFS storage
|
||||
Reference in New Issue
Block a user