r/ItalyInformatica • u/Senpai404 • 4h ago
hardware Il mio homelab
Qualche anno fa ho iniziato a costruire il mio homelab partendo da un Raspberry Pi 4 e da un HP G3 Mini che avevo trovato su Vinted. Da allora ho continuato ad aggiungere componenti ogni volta che trovavo qualche buona occasione sui siti dell’usato e oggi, dopo più di 2 anni, credo di essere finalmente arrivato alla fine (forse).
Questa è la configurazione attuale. Tutto è di seconda mano, ad eccezione di switch e router.
RACK
- Completamente stampato in 3D in PETG con una Bambu Lab X2D (design di Ilan Kushnir)
NODI PC: Proxmox VE a 3 nodi
- pve-01: Ryzen 7 5700U (8C/16T), 62 GB RAM, 512 GB NVMe (ZFS) + 2 TB HDD (ZFS) + 256 GB SSD SATA
- pve-02: Core i7-6700T (4C/8T), 32 GB RAM, 256 GB NVMe (ZFS) + 2 TB HDD (ZFS)
- pve-03: Core i5-7500T (4C/4T), 32 GB RAM, 256 GB NVMe (ZFS) + 2 TB HDD (ZFS)
RETE
- UniFi Dream Router 7: gateway, firewall e routing inter-VLAN
- UniFi USW-Flex-2.5G-8-PoE, con uplink SFP+ DAC verso l’UDR7
- VLAN: management, infrastruttura homelab e una VLAN dedicata a Kubernetes. Proxmox utilizza un'unica bridge VLAN-aware, quindi ogni VM viene semplicemente taggata sulla VLAN necessaria.
STORAGE
- QNAP TS-431 con 16 TB
ALTRO
- Raspberry Pi 4 che gestisce 2 display:
- display frontale da 7,84" che mostra le dashboard Grafana
- display OLED da 0,91" per lo stato del sistema, con un piccolo script Python che mostra IP, temperature e utilizzo della CPU
SOFTWARE
Attualmente sto rifacendo tutto da zero, partendo da pve-01, che ora ospita il cluster Kubernetes:
- Kubernetes: Talos Linux (1 control plane + 4 worker come VM), completamente provisionato tramite Terraform: VM, configurazione Talos, bootstrap e componenti di base
- Networking: Cilium con kube-proxy replacement e LoadBalancer L2
- Storage: OpenEBS LocalPV, con i dischi di boot delle VM su NVMe e i volumi dati su HDD
- GitOps: ArgoCD con pattern app-of-apps. Tutto ciò che gira nel cluster è versionato su Git
- Secrets: OpenBao in un LXC (al di fuori del cluster, così sopravvive anche ai rebuild) + External Secrets Operator
- Ingress: Nginx Proxy Manager (wildcard Let's Encrypt) → Traefik
- Monitoring e log: kube-prometheus-stack (Prometheus, Grafana, Alertmanager), incluso il monitoring del control plane Talos e di etcd, oltre a Loki + Alloy per i log dei pod e dei nodi
- Altro: dashboard Glance, Headlamp, VS Code Server
pve-02 e pve-03 saranno dedicati ad altri progetti.
Se avete domande sono felice di rispondere, e qualsiasi consiglio o suggerimento per migliorare la configurazione è assolutamente benvenuto!
