Un homelab va ben oltre la semplice sperimentazione tecnica: rappresenta una scelta consapevole per chi vuole riappropriarsi del controllo sui propri servizi digitali. In un’epoca in cui la maggior parte delle nostre informazioni risiede su server di terze parti, spesso soggetti a politiche di privacy opache, avere un’infrastruttura personale significa decidere autonomamente dove e come vengono memorizzati i nostri dati.

Tuttavia, il primo ostacolo che si presenta è spesso la scelta dell’hardware: trovare il giusto equilibrio tra prestazioni, consumi energetici e costi non è sempre immediato. I tradizionali server rack, seppur potenti, sono ingombranti, rumorosi e poco adatti a un ambiente domestico. È qui che i mini PC entrano in gioco, offrendo una soluzione compatta, silenziosa e incredibilmente efficiente.

In questa serie, esploreremo passo dopo passo come costruire il proprio homelab, partendo proprio dalla selezione dell’hardware fino alla costruzione di un cluster Proxmox a 3 nodi con Ceph come filesystem distribuito per i dischi delle VM.

Requisiti

Di seguito i requisiti specifici per il (mio) mini PC ideale:

  • Doppia porta RJ45 da 2,5 GbE
  • Doppio slot M.2 2280 NVMe (1 per il OS e uno per lo storage Ceph)
  • RAM dual-channel espandibile
  • Compatibilità ottimale con Linux per l’installazione di Proxmox
  • Costo contenuto

Diverse opzioni sono state valutate, ma scartate. Ad esempio, l’HP ProDesk 600 G5 Mini con CPU i5-9500T è privo di una doppia porta RJ45 nativamente, richiedendo un modulo aggiuntivo, costoso e della cui compatibilitá non sono certo. Allo stesso modo, il GMKtec G9 N150, che offre due porte 2,5 GbE e quattro slot NVMe, ha solo 12 GB di RAM DDR5 non espandibile.

Dopo un’attenta valutazione, ho optato per il Bosgame P4, che presenta le seguenti caratteristiche:

  • CPU AMD Ryzen 7 5700U
  • RAM DDR4 16 GB dual-channel, espandibile fino a 64 GB
  • 512 GB di storage
  • 2 Slots M.2 2280 NVMe PCIe 3.0
  • 2x RJ45 2,5 GbE
  • Connettività Bluetooth 5.2 e WiFi 6E
  • Default TDP di 15W
  • USB-C Power Delivery
  • Garantita compatibilitá con Linux
  • Costo sui 300 euro

Il TDP (Thermal Design Point) è un’indicazione del calore (energia) dissipato da un processore quando lavora a pieno carico e si misura in Watt. Si tratta del calore che il sistema di raffreddamento dovrà smaltire per mantenere la temperatura del processore entro una soglia limite. Minore è il calore sviluppato dal processore, minore sarà il lavoro che dovrà svolgere il sistema di raffreddamento, minori quindi saranno i consumi energetici.

Più calore generato e più potenza assorbita in generale implica che il chip offre prestazioni migliori rispetto ad altri modelli.

tdp

Bosgame P4

bosgame-front

bosgame-back

É presente una ventolina non rumorosa:

bosgame-fan

Questo l’interno:

bosgame-inside

Nello specifico, di seguito i modelli di RAM e SSD NVMe:

bosgame-ram

bosgame-ssd

Al modello SSD fornito, ho affiancato un Verbatim Vi3000 PCIe 3.0 M.2 2280 da 1TB.

Il PCIe è uno standard di interfaccia di espansione a bus seriale, utilizzato per connettere dispositivi di espansione (schede video, SSD, schede di rete, ecc.) alla scheda madre. Rispetto al SATA, che è limitato a una sola corsia di trasmissione, il PCIe è in grado di utilizzare fino a quattro corsie, offrendo così un vantaggio significativo in termini di velocità.

NVMe (Non-Volatile Memory Express) è un protocollo di comunicazione aperto progettato per interfacciarsi con memorie flash non volatili, comunemente collegate tramite PCIe.

M.2 si riferisce al fattore di forma fisico dell’unità. Introdotto nel 2012 come sostituto dello standard mSATA, l’M.2 è caratterizzato da dimensioni fisiche specifiche, indicate da numeri che rappresentano larghezza e lunghezza dell’unità: ad esempio, un’unità M.2 2280 ha una larghezza di 22 mm e una lunghezza di 80 mm. È importante notare che non tutte le unità M.2 sono basate su PCIe NVMe; esistono anche unità M.2 SATA.

Prime impressioni

Il mini PC trasmette una sensazione di solidità. L’unico neo riscontrato è che la plastica tende a trattenere le impronte digitali, il che può influire sull’estetica del dispositivo nel tempo.

Il sistema è fornito con Windows 11 Pro regolarmente licenziato. Al primo avvio, l’interfaccia risulta essenziale, con un numero limitato di applicazioni preinstallate.

bosgame-hwinfo

Da notare che la virtualizzazione AMD-V risulta giá attiva mentre Secure Boot é disattivato.

amd-v

Dopo aver eseguito una scansione approfondita utilizzando diversi antivirus, non è stato rilevato alcun malware. Sono stati anche installati tutti gli aggiornamenti disponibili, inclusi driver, firmware e i vari update dell’OS, anche se quest’ultimo verrà successivamente rimosso in favore di Proxmox.

Collegamento tramite RDP

Per stabilire una connessione RDP da un sistema Linux con sessione grafica Wayland, è necessario installare il pacchetto freerdp3-wayland. Il comando per avviare la connessione, con sintassi analoga a quella di xfreerdp, è il seguente:

1
wlfreerdp3 /u:$USER /v:$IP /bpp:32 +window-drag +clipboard +compression +auto-reconnect /dynamic-resolution /gfx /rfx /encryption-methods:128 /d:workgroup 2> /dev/null

Benchmark

CrystalDiskMark 9

Download

CrystalDiskMark è un software gratuito e open source per testare le prestazioni dei dischi. L’interfaccia principale presenta un design essenziale: nella parte superiore sinistra è presente il pulsante All, che consente di avviare simultaneamente tutti i test definiti dal profilo selezionato. Adiacente a tale pulsante, un menu a discesa numerico permette di specificare il numero di ripetizioni per ciascun test. Tale parametro influisce direttamente sull’affidabilità dei risultati: un numero maggiore di passaggi garantisce una media finale più rappresentativa, a fronte di un tempo di esecuzione complessivamente più lungo.

Un ulteriore menu a discesa consente di regolare la dimensione del file di prova, generalmente impostata su 1 GiB.

Prima di avviare i test, è necessario selezionare il profilo appropriato in base al tipo di unità in esame. Nel nostro caso, bisognerà selezionare il profilo NVMe.

SEQ e RND

CrystalDiskMark organizza i benchmark in due categorie principali: sequenziale (SEQ) e casuale (RND4K).

I test sequenziali simulano operazioni di lettura e scrittura continue, come l’accesso a blocchi di dati consecutivi. In questo scenario, l’unità non deve gestire spostamenti frequenti tra settori diversi, consentendo di raggiungere velocità prossime a quelle massime teoriche dichiarate dal produttore.

I test casuali replicano invece un utilizzo più vicino a quello reale del sistema operativo, caratterizzato da accessi a posizioni sparse sul disco.

Queue Depth e Thread

Due parametri fondamentali nei benchmark di storage sono la queue depth (Q) e il numero di thread simultanei (T).

  • Q: rappresenta il numero di operazioni di lettura/scrittura in coda in attesa di essere elaborate dall’unità. Un valore Q8, ad esempio, indica che fino a otto operazioni possono essere in coda in attesa dell’esecuzione. Una queue depth più elevata consente al controller del disco di gestire un maggior numero di richieste, migliorando le prestazioni
  • T: indica il numero di operazioni che possono essere elaborate in parallelo. Un valore T1 corrisponde a un singolo thread, mentre T16 significa che sedici thread inviano richieste di accesso contemporaneamente

Test standard

La finestra principale di CrystalDiskMark mostra quattro tipologie di test, ciascuna identificata da una sigla che ne descrive le caratteristiche tecniche. Ogni test è progettato per valutare prestazioni specifiche dell’unità di storage in scenari d’uso diversi.

  • SEQ1M Q8T1: test sequenziale con blocchi da 1 MiB, queue depth 8 e 1 thread. Simula operazioni di lettura/scrittura continue e di grandi dimensioni. I valori ottenuti dovrebbero avvicinarsi a quelli dichiarati dal produttore, rappresentando le prestazioni massime teoriche dell’unità in condizioni ottimali
  • RND4K Q32T16: test randomizzato con blocchi da 4 KiB, queue depth 32 e 16 thread. Simula un carico di lavoro estremo, con numerosi accessi di piccole dimensioni eseguiti in parallelo. Questo test è particolarmente indicato per valutare la capacità dell’unità di gestire file di piccole dimensioni sotto stress, tipico di ambienti server
  • RND4K Q1T1: test randomizzato con blocchi da 4 KiB, queue depth 1 e 1 thread. Misura le prestazioni nell’accesso casuale con il minimo parallelismo possibile. Questo scenario rappresenta lo stress test più severo per un’unità, poiché combina la dimensione minima dei blocchi con la parallelizzazione più bassa possibile. Non è raro vedere valori molto bassi, soprattutto sugli HDD

Questi i risultati:

  • HighRel M.2280 NVMe/PCIe 3.0 da 512GB: molto vicino ai dati dichiarati di R/W 3500/2550

highrel-crystaldiskmark

  • Verbatim Vi3000 PCIe 3.0 M.2 2280 da 1TB

verbatim-crystaldiskmark

CrystalDiskInfo

Download

CrystalDiskInfo è un’utility open source progettata per il monitoraggio dello stato di salute dei dispositivi di archiviazione. Permette difatti di visualizzare:

  • Lo stato generale di salute del disco
  • La temperatura
  • I parametri SMART (Self-Monitoring, Analysis and Reporting Technology)
    • Eventuali settori riallocati o danneggiati
    • Ore di accensione

crystaldiskinfo

Geekbench

Download

Geekbench è un benchmark multi-piattaforma, sviluppato da Primate Labs, progettato per misurare le prestazioni della CPU e GPU su una vasta gamma di dispositivi, inclusi PC, smartphone, tablet e server.

Il software esegue test che replicano carichi di lavoro reali, come compressione dati, elaborazione di immagini, calcoli matematici, ecc. al fine di valutare velocità, efficienza e capacità di elaborazione dell’hardware. I punteggi di Geekbench sono standardizzati e pubblicati in un database online, consentendo agli utenti di confrontare le prestazioni del proprio dispositivo con quelli di altri modelli.

geekbench-cpu

geekbench-vulkan

geekbench-opencl

Cinebench

Download

Cinebench è un benchmark basato sul motore di rendering di Cinema 4D, software professionale impiegato nell’industria cinematografica e grafica. A differenza di altri test, Cinebench simula carichi di lavoro reali, come il rendering di scene 3D complesse, offrendo una valutazione affidabile delle prestazioni della CPU in contesti applicativi concreti.

cinebench

Per testare la stabilità termica della CPU e rilevare eventuali fenomeni di thermal throttling, è possibile procedere come segue:

  • Accedere al menu File > Advanced Benchmark
  • Impostare la durata del test su 20 minuti
  • Monitorare le temperature e le frequenze operative tramite software di diagnostica, come HWiNFO

thermal-throttling

Durante questi test, il mini PC si é mai scaldato eccessivamente e ha raggiunto una temperatura massina di circa 75 °C.

Passmark Performancetest

Un altro software che confronta le prestazioni del proprio PC con computer simili in tutto il mondo.

passmark

Conclusione

In conclusione, il mini PC ha confermato le aspettative, dimostrando di possedere un hardware ben bilanciato a un prezzo accessibile. Sarà interessante monitorare le sue prestazioni a lungo termine, soprattutto come nodo di un cluster PVE.

Riferimenti