Vi presento il mio homelab
Avere un server proprio è il sogno di tutti gli “smanettoni”. Si pensa sia difficile, costoso, ingombrante. Beh, posso assicurarvi che non è assolutamente così. Oggi vi presento il mio homelab.
Aspetta: cos’è un homelab?
Un homelab è un insieme di cose che ci permettono di gestire dei servizi nostri in locale, dallo storage di file ad automazione casalinga, backup, servizi in cloud. Può essere un singolo Raspberry Pi 4 (a volte detti “minilab”) come un armadio rack con vari server e storage di dischi. Tutto dipende dalle necessità e possibilità (e dal livello di sopportazione dell’eventuale consorte/genitore). La cosa interessante è che è completamente gestita da noi in casa nostra, con i pro e i contro che vedremo.
Perchè avere un homelab?
I motivi sono molteplici e spesso diversi per ogni persona. Provo ad elencare quelli che vedo più ricorrenti
La proprietà
Se utilizziamo servizi di altri sottostiamo alle loro condizioni contrattuali, che possono cambiare unilateralmente, anche monetariamente. Non sono rari i casi di aumento dei costi, cambio delle capacità, chiusura di servizi. Avere un servizio in casa ci slega completamente dal mondo commerciale esterno, le condizioni le dettiamo noi e gestiamo noi i costi.
La privacy
A patto di gestire correttamente la sicurezza, questione molto importante, i dati nel nostro homelab sono nostri e non vengono ceduti o rubati da altri. Non c’è un’azienda che utilizza i nostri dati per i suoi scopi, anonimizzati o meno. I dati sono in una rete interna e da lì escono solo in modo sicuro (se le cose sono fatte a modo). Ricordiamoci che là fuori non c’è niente di gratis, se un servizio è gratis vuol dire che lo stiamo pagando in altro modo.
La sperimentazione e lo spirito d’avventura
Avere un homelab ci costringe a testare, imparare, studiare. Non è una materia difficile, ma estremamente ampia e con molte sfaccettature. Si impara la gestione dei sistemi, dei vari servizi, dei backup, la sicurezza informatica, la gestione fisica dell’hardware e delle reti. È proprio il motivo della presenza della parola “lab” nel termine, proprio nel senso di laboratorio. In un homelab c’è sempre una sezione dove si smanetta e si fanno test, che sia un computer fisico o una macchina virtuale.
Non è tutto rose e fiori
Penso sia giusto dare le due facce della medaglia: avere un homelab ha anche lati negativi. Non sono bloccanti, ma se si affronta questo “viaggio” bisogna essere coscienti di alcune cose. Innanzitutto i costi. Probabilmente servirà comprare un minimo di attrezzatura, si vorrà ampliare il parco, aggiornare l’attuale. Si trovano prezzi interessanti sull’usato, ma sempre dindi che escono sono. Inoltre va considerato che un homelab resta acceso praticamente 24/7 (Tanto lo so che fate le ore piccole per smanettare sui vostri sistemi) e questo ha un costo in corrente elettrica, più o meno importante che sia. Altro aspetto molto importante (e spesso sottovalutato) è la sicurezza. Sia in termini di difesa informatica che in termini di backup. Un’azienda ha (solitamente) un intero team che gestisce questi aspetti, con sistemi di monitoring automatici e conoscenze adeguate. Un homelab è gestito spesso da una sola persona, in molti casi autodidatta, che fa anche altro nella vita.
La mia configurazione
La VPS
Sì, nella mia configurazione c’è anche una parte esterna alla mia rete, ma per un buon motivo. Il punto di incrocio di tutto è una VPS su Hetzner, su questa è configurata una VPN wireguard tramite PiVPN e un adblocker con Pihole. Al momento solo questo, ma l’idea della VPS è che qui ci stia ciò che non è di sicurezza critica e allo stesso tempo deve essere accessibile 24/7. Alla rete VPN sono collegati tutti i dispositivi in modo da essere accessibili in modo sicuro anche dall’esterno.
Il server principale
Cuore di tutto è… un vecchio portatile. No, non sto scherzando, si tratta di un vecchio Asus A53T con lo schermo rotto con processore AMD A6-3420M, 8 GB di RAM e un SSD da 128 GB. A questo è attaccato via usb un dual bay con 2 HDD da 4 TB. Sopra c’è installato Proxmox che fa da gestore dei container e delle VM di cui ho bisogno. Al momento c’è OpenmediaVault, Nextcloud, Etherpad, una vm debian per i test e un po’ di container di test che accendo alla bisogna. No, non sono necessari rack impossibili per avere un qualcosa, basta veramente poco, poi si espanderà.
Il pc di monitor
Per avere un accesso veloce alle macchine più importanti ho un Asus Eeepc 1001HA direttamente sullo schermo chiuso del server connesso fisso via ssh a ciò di cui ho bisogno. È piccolo, ma fa il suo dovere.
La “dependance domotica”
Poco lontano c’è un vecchio Raspberry Pi 2. Ho ragionato molto su come utilizzare questo piccola meraviglia. Alla fine gli ho dato 2 funzioni: Dashboard centrale di tutto il sistema con Dashy e automazione domotica con Home Assistant (alcuni Shelly e un paio di telecamere di sorveglianza). Di più temo non riesca a reggere, ma va bene così.
Il desktop
Il pc di utilizzo quotidiano è, almeno per il momento, un vetusto HP con un i5 di seconda generazione, 8 GB di RAM e un ssd da 256 GB (più il vecchio disco da 1 TB dell’era pre-SSD). Sopra installato Linux Mint e tutto quello che mi serve lato desktop. Giusto per completezza uso uno schermo Samsung 34” 21:9, trackball Logitech MX Ergo e tastiera Lily58 autocostruita.
La rete
La rete è una nota dolente del mio homelab. Purtroppo per questioni “architetturali” non è semplice cablare casa (muri di sasso in parte a vista da 80 cm). Ho scelto comunque di dividere questo mondo dalla rete principale (router Starlink) utilizzando un GL-Inet Mango come bridge ethernet. A questo è attaccato uno switch TP-Link TL-SG108 che smista la connessione e un router TP-Link VR400 che gestisce il Raspberry Pi 2 e la domotica. Tutto sicuramente migliorabile (e i progetti ci sono), ma al momento devo accontentarmi.
Sicuramente ci sono soluzioni migliori, ma ho voluto comunque condividere la mia situazione perché credo che con poca spesa si riesca ad ottenere comunque un homelab decente che possa soddisfare le nostre necessità, che siano di privacy, apprendimento o sperimentazione.