Richie Müller
Retroscena

NAS fai da te: la mia configurazione Unraid per prestazioni e massima visione d'insieme

Richie Müller
24.7.2025
Traduzione: Leandra Amato
Immagini: David Lee

Il mio server Unraid è installato. Ma prima che i container Docker o le app vi si trasferiscano, il mio NAS ha bisogno di una struttura. In questa parte ti spiego come dividere i cache pool, avviare l'array e organizzare l'archiviazione dei dati in modo pulito – e perché occorre anche una strategia.

Nell'ultimo articolo ho installato il sistema operativo Unraid su una chiavetta USB, che rimane permanente nel mio NAS.

Ora è il momento della messa a punto. Perché «TomBombadil», come viene chiamato il mio server Unraid, servirà come futuro laboratorio di ricerca. In questo articolo scopri quali sono le considerazioni e le riflessioni che hanno contribuito a questo risultato. Non è una guida passo dopo passo. Ce ne sono già abbastanza su YouTube.

Accedo per la prima volta e mi ritrovo davanti all'interfaccia utente di Unraid. Per evitare problemi in seguito, ho preso l'abitudine di fare lo stesso anche qui: innanzitutto, aggiorno il sistema operativo all'ultima versione e imposto il fuso orario corretto.

Due cache pool: separare ciò che ha compiti diversi

Prima di iniziare con gli share, mi prendo un attimo di tempo. Infatti, la struttura dei dati non solo determina la chiarezza, ma anche le prestazioni e l'affidabilità del sistema. La mia decisione influenza anche la ridondanza e la manutenzione del server a lungo termine.

Ho integrato un totale di quattro SSD: due da 2 terabyte ciascuno (TB) e due da 500 gigabyte (GB). All'inizio, ho cercato di buttare tutti in un solo cache pool. Ma con SSD di dimensioni diverse, con il RAID 1 (rete di dischi rigidi con meccanismo di sicurezza) spreco rapidamente capacità inutilmente – nel peggiore dei casi più della metà dello spazio.

Infatti, il RAID 1 riflette sempre i dati tra due unità in coppia e utilizza solo la capacità disponibile su entrambi gli SSD coinvolti. Se una delle unità è più piccola, lo spazio di archiviazione in eccesso dell'SSD più grande viene ignorato.

La scheda madre ha un totale di tre slot per SSD NvmE.
La scheda madre ha un totale di tre slot per SSD NvmE.

Per questo motivo mi affido a due pool separati con SSD della stessa dimensione, ciascuno in BTRFS RAID 1. Uso il B-Tree File System (BTRFS) perché è l'opzione migliore per i pool di SSD ridondanti in Unraid, con rilevamento degli errori e gestione flessibile.

  • Pool di cache SSD 1 (cache): 2 × 2 TB NvmE SSD in RAID 1 è l'ideale per l'archiviazione dei dati intermedi di container Docker, AppData, macchine virtuali – in altre parole, tutto ciò che è costantemente attivo e richiede un accesso rapido.
  • Pool di cache SSD 2 (cache_fast): 2 × 500 GB SATA SSD in RAID 1 per i dati temporanei come i download o i dati come le caselle di posta di Paperless ngx o le clipboard di backup.

ZFS o BTRFS? La questione del file system giusto

I file system come ZFS o BTRFS regolano come i dati vengono memorizzati, organizzati e protetti su un'unità. Svolgono un ruolo simile a quello di FAT32 o NTFS in Windows. Tuttavia, offrono funzioni aggiuntive come checksum, snapshot e supporto RAID nativo, particolarmente importanti per i server e i sistemi NAS.

Ho deciso deliberatamente di non utilizzare ZFS (originariamente Zettabyte File System), anche se tecnicamente fa molte cose bene, e nemmeno ext4 (fourth extended file system), in quanto non offre alcuna funzione estesa. Voglio rimanere flessibile con i cache pool. Un pool ZFS non è così facile da espandere. Ad esempio, se è stato creato come mirror (RAID 1), non posso semplicemente aggiungere una singola unità SSD in seguito.

Invece, dovrei installare di nuovo due unità SSD della stessa dimensione. Con RAID-Z, una variante RAID disponibile esclusivamente per ZFS, diventa ancora più rigida: la struttura originale è fissa. Ottengo più memoria solo se installo diversi nuovi dischi rigidi contemporaneamente.

Le unità SSD installate sono dotate di elementi di raffreddamento.
Le unità SSD installate sono dotate di elementi di raffreddamento.

ZFS è ingombrante anche con unità SSD di diverse dimensioni: utilizza solo la memoria che il disco rigido più piccolo offre. Il resto rimane inutilizzato. Soprattutto con i cache pool, si tratta di un potenziale sprecato.

BTRFS è molto più easy: posso sostituire o aggiungere SSD più facilmente, anche con diverse dimensioni di capacità. Il grande vantaggio: la ridondanza viene mantenuta e ho ancora una buona visione d'insieme. Unraid è dotato di BTRFS in modo nativo, senza plugin, senza sforzi aggiuntivi. La scelta giusta per la mia configurazione, che dovrebbe svilupparsi nel tempo.

La separazione netta porta struttura e ordine, ma anche sicurezza e impedisce colli di bottiglia con l'accesso simultaneo. Inoltre, se necessario, posso integrare senza problemi ulteriori assegnazioni nella struttura esistente.

L'array: 4 × 6 TB e 2 × parità = 24 TB netti e sonno tranquillo

Divido i miei sei dischi rigidi da 6 TB nel modo classico: due dischi rigidi come parità (unità dati ridondante), quattro come unità dati. In questo modo ho a disposizione una capacità di memoria di 24 TB. Sono inoltre protetto contro un eventuale guasto di massimo due dischi. Tutti e quattro i dischi dati funzionano con eXtents File System (XFS), lo standard Unraid. Questo file system è stabile, collaudato e particolarmente efficiente per i file di grandi dimensioni come quelli multimediali o di backup.

Unraid persegue il proprio concetto: a differenza del RAID o del classico «Just a Bunch of Disks» (JBOD), ogni disco dati rimane leggibile singolarmente. Il tutto è garantito da una procedura di parità, che può ammortizzare il guasto di un massimo di due unità. Inoltre, posso archiviare i backup su un disco rigido esterno.

Ho acquistato sei dischi rigidi NAS per l'array.
Ho acquistato sei dischi rigidi NAS per l'array.

Share con struttura

Voglio sapere fin dall'inizio come stanno le cose e soprattutto perché. Di conseguenza, le mie directory più importanti ricevono regole chiare:

Le modalità cache possono essere impostate individualmente per ogni share. Unraid permette a ogni share di definire esattamente se e come viene utilizzata la cache. Puoi scegliere tra quattro opzioni:

  • only – la condivisione si trova esclusivamente nel cache pool (ad esempio per Docker o VM).
  • prefer – la condivisione viene preferibilmente memorizzata nella cache, ma in caso di mancanza di spazio si sposta nell'array.
  • yes – i nuovi dati finiscono prima sulla cache e poi vengono spostati automaticamente nell'array.
  • no – la cache viene ignorata e tutti i dati finiscono direttamente nell'array. Il cosiddetto «mover» si assicura in background che i dati vengano spostati come previsto – nel mio caso ogni 6 ore.

Quindi i dati temporanei finiscono prima sulle unità SSD e poi vengono spostati automaticamente nell'array. I dati dei container o delle macchine virtuali, invece, rimangono permanentemente nei cache pool, dove ricevono le prestazioni di cui hanno bisogno.

La RAM offre un ulteriore aumento delle prestazioni: Unraid utilizza automaticamente la RAM libera come cache di lettura e scrittura («buffer cache») per fornire i dati utilizzati di frequente ancora più velocemente e per alleggerire gli SSD.

Ho installato la RAM con correzione degli errori.
Ho installato la RAM con correzione degli errori.

Nel mio NAS fai da te sono installati un totale di 128 GB di RAM. Nelle impostazioni di Unraid, ho specificato che un massimo del 75% della memoria disponibile può essere utilizzato per le cache, cioè un massimo di 96 GB di RAM. Questo avviene tramite l'impostazione vm.dirty_ratio, che ho regolato nella console come segue:

sysctl -w vm.dirty_ratio=75

Questo lascia un buffer sufficiente per Docker, le macchine virtuali e altri processi. Allo stesso tempo, i servizi ad alta intensità di dati, come Paperless NGX o Nextcloud, beneficiano notevolmente di tempi di accesso più brevi.

Se questa cache RAM non venisse utilizzata, tutti gli accessi in lettura e scrittura dovrebbero essere elaborati direttamente dalle unità SSD. Sebbene sia ancora abbastanza veloce, è meno efficiente a lungo termine e può portare a una maggiore usura delle unità SSD.

Unraid rilascia automaticamente la memoria non appena è attivamente necessaria per altri processi. Quindi la cache utilizza solo la RAM, che al momento non è necessaria altrove. Qui puoi trovare un video di YouTube che spiega la configurazione della «buffer cache»: Per i sottotitoli in italiano clicca sull’icona delle impostazioni e seleziona «Traduzione automatica» alla voce «Sottotitoli»

Avviare l'array: il momento della verità

Una volta definita la struttura dei dati e impostati i cache pool, assegno le unità nell'interfaccia web di Unraid: due dischi di parità, quattro dischi di dati e gli SSD ai rispettivi cache pool. Unraid visualizza quindi un pallino verde per indicare che lo stato è OK.

Dopo aver cliccato su «Start», Unraid inizializza l'array, controlla le assegnazioni e prepara il file system. A prima vista non succede molto, se non che lo stato cambia e appare un'opzione di formattazione.

Ho scelto XFS come file system per tutte le unità dati e BTRFS per i cache pool. Confermo la formattazione dei supporti dati, dopodiché devo aspettare.

Il calcolo richiede tempo, soprattutto quando vengono impostati due dischi di parità. A seconda delle dimensioni degli hard disk, questa operazione può richiedere diverse ore o addirittura giorni. Il sistema è pienamente operativo durante questo periodo, ma le prestazioni sono limitate. Ho eseguito il processo per tutta la notte.

Suggerimento: se ti interessa, puoi monitorare i progressi in tempo reale nell'interfaccia web. Unraid mostra in modo molto trasparente ciò che sta accadendo, compresa la velocità e la stima del tempo rimanente.

La verifica della parità ha richiesto oltre 11 ore.
La verifica della parità ha richiesto oltre 11 ore.
Fonte: Screenshot: Richie Müller

La mattina dopo è arrivato il momento: l'array è pronto e il mio NAS è ufficialmente in uso.

Due pool di SSD, un array stabile e una struttura di dati deliberatamente scelta: il mio NAS autocostruito ora non solo ha prestazioni, ma anche un piano ben definito.

Non dimenticare il tuo backup: una chiavetta USB può salvarti

Dopo il primo avvio dell'array e dei cache pool, ho fatto qualcosa che spesso viene trascurato, ma che dovrebbe essere fatto con urgenza: ho creato un backup iniziale della chiavetta USB.

Come sai, Unraid salva tutte le configurazioni importanti sulla chiavetta USB, che contiene anche il sistema operativo. Se questo non funziona, il sistema non si perde, ma il processo di recupero è snervante. Ci vuole tanto? No. La configurazione può essere copiata rapidamente su una nuova chiavetta USB, grazie a un backup.

Ho eseguito il backup sul mio Synology. Posso anche scaricare il mio file chiave nel mio account Unraid, se necessario. Un backup completo è possibile anche con un plugin speciale, ma te lo spiegherò nel prossimo articolo.

Il mio server fai da te non solo è funzionale, ma è anche pronto per l'espansione. Docker, VMS, applicazioni della Community e plugin sono già in attesa. Ecco di cosa parlerò nel prossimo articolo della serie.

  • Guida

    NAS fai da te – parte 5: l'installazione di Unraid su chiavetta USB mi manda in bestia

    di Richie Müller

  • Retroscena

    NAS fai da te – parte 4: la ricerca dell'hardware giusto

    di Richie Müller

  • Retroscena

    NAS fai da te – parte 3: quale sistema operativo voglio?

    di Richie Müller

  • Retroscena

    NAS fai da te – parte 2: ho dato retta alla Community!

    di Richie Müller

  • Retroscena

    NAS fai da te – parte 1: il difficile addio a Synology

    di Richie Müller

Immagine di copertina: Richie Müller

A 48 persone piace questo articolo


User Avatar
User Avatar

Giornalista con più di 20 anni di esperienza, soprattutto nel settore del giornalismo online. Il mio strumento di lavoro principale? Un portatile – preferibilmente con connessione a Internet. Questi apparecchi mi affascinano a tal punto che, di tanto in tanto, mi piace smontare PC e portatili, ripararli e riassemblarli. Perché? Perché mi diverte! 


Informatica
Segui gli argomenti e ricevi gli aggiornamenti settimanali relativi ai tuoi interessi.

Rete
Segui gli argomenti e ricevi gli aggiornamenti settimanali relativi ai tuoi interessi.

Potrebbero interessarti anche questi articoli

  • Retroscena

    NAS fai da te – parte 4: la ricerca dell'hardware giusto

    di Richie Müller

  • Retroscena

    NAS fai da te – parte 3: quale sistema operativo voglio?

    di Richie Müller

  • Retroscena

    NAS fai da te – parte 1: il difficile addio a Synology

    di Richie Müller

17 commenti

Avatar
later