SnapRAID ci offre una protezione di base contro i guasti dei dischi e si abbina perfettamente con mergerfs. Sebbene spesso siano utilizzati insieme, è importante sapere che funzionano anche indipendentemente: mergerfs unisce più dischi in un unico punto di montaggio, mentre SnapRAID calcola la parità per consentire il recupero dei dati in caso di guasto di un’unità. Insieme, replicano una soluzione simile alla “JBOD con parità” utilizzata da Unraid. La differenza principale è che Unraid calcola la parità in tempo reale, influenzando negativamente le prestazioni in scrittura, mentre SnapRAID effettua i calcoli in modo programmato (es. ogni notte), migliorando l’efficienza.
Per la maggior parte delle configurazioni con server multimediali (PMS), i contenuti sono distribuiti su dischi JBOD uniti tramite mergerfs. Senza SnapRAID, la perdita di un disco comporterebbe la perdita definitiva dei dati su quell’unità. Con SnapRAID, invece, è possibile ricostruire il disco fallito utilizzando i dati di parità salvati nell’ultimo snapshot. Questo approccio è perfetto per dataset statici, come le librerie multimediali, ma non adatto a dati dinamici (es. metadati Plex).
Cosa troverai in questo articolo
Cos’è SnapRAID?
SnapRAID è un progetto open source (licenza GPLv3) che calcola la parità per array di dischi, offrendo protezione fino a 6 guasti simultanei. Trasforma un insieme di dischi JBOD in un sistema coeso e protetto contro errori e degrado dei dati (bitrot). È pensato soprattutto per utenti con grandi file statici, come video e archivi multimediali.
Supporta dischi di dimensioni diverse, purché il disco di parità sia almeno grande quanto il più grande tra i dischi dati. Funziona su vari sistemi operativi: Linux, macOS, Windows, BSD, Solaris e OpenIndiana.
Il nome SnapRAID deriva dal fatto che non è un RAID tradizionale: si tratta di un “RAID a snapshot“. Nessuna striping, e la parità è salvata su dischi dedicati. Questa è una grande differenza rispetto a soluzioni come mdadm, ZFS o Unraid (salvo l’uso della cache disk in quest’ultimo).
Il sito ufficiale include una tabella comparativa con altre soluzioni simili.
Perché scegliere SnapRAID?
Nel contesto del nostro server multimediale, SnapRAID soddisfa i seguenti requisiti:
- Tolleranza ai guasti dei dischi
- Verifica dell’integrità dei dati tramite checksum a 128 bit contro il bitrot
- Supporto a dischi di dimensioni differenti
- Aggiornamento incrementale delle unità disco (anche una alla volta)
- Nessuna striping: ogni disco è leggibile singolarmente
Grazie all’integrazione con mergerfs, ogni disco resta formattato in modo indipendente, pur mantenendo tolleranza ai guasti. SnapRAID può inoltre funzionare su dischi già popolati. Solo i dischi attivi vengono avviati, riducendo il consumo energetico rispetto ai RAID tradizionali, che richiedono la rotazione simultanea di tutte le unità.
Importante: SnapRAID non è un backup. In caso di disastri fisici (allagamento, furto, incendio), i dati vanno comunque copiati altrove. L’uso di SnapRAID va sempre accompagnato da un backup esterno.
SnapRAID è adatto a me?
Dipende dal tuo utilizzo. SnapRAID è pensato per dataset statici, come collezioni di film o archivi. Se hai, ad esempio, 2 TB di film e 2 TB di serie TV, questi contenuti cambiano raramente. In questi casi, la parità può essere calcolata una volta al giorno durante le ore notturne, senza necessità di calcoli in tempo reale.
Esempio: scarichi un file chiamato IlFilmMigliore.mkv
che viene subito salvato sul disco. Fino a quando non esegui snapraid sync
, quel file resta non protetto. Se nel frattempo il disco si guasta, il file non sarà recuperabile. Tuttavia, puoi sempre eseguire manualmente snapraid sync
subito dopo aver aggiunto nuovi contenuti.
SnapRAID non è adatto a:
- Database
- Ambienti con elevato turnover di file
- Sistemi che richiedono protezione in tempo reale
In questi casi è meglio valutare soluzioni basate su RAID tradizionali.
SnapRAID vs RAID: differenze principali
Caratteristica | SnapRAID | RAID tradizionale (es. mdadm, ZFS) |
---|---|---|
Tipo di protezione | Snapshot (manuale o programmata) | In tempo reale |
Consumo energetico | Solo i dischi attivi vengono avviati | Tutti i dischi girano simultaneamente |
Compatibilità dischi | Dimensioni diverse supportate | Meglio dischi identici |
Prestazioni in scrittura | Alte, senza calcolo real-time | Più basse (calcolo in tempo reale) |
Facilità di recupero | Ogni disco ha file system leggibile | Dipende dalla configurazione |
Idoneità a dataset dinamici | Bassa | Alta |
Livelli supportati | Simile a RAID5/6, senza striping | RAID 0, 1, 5, 6, 10 ecc. |
E il pooling dischi di SnapRAID?
SnapRAID include una funzione di pooling che, a prima vista, potrebbe sembrare sostitutiva di mergerfs. Tuttavia, si tratta di una vista virtuale in sola lettura basata su symlink, non adatta a un utilizzo pratico.
Usare SnapRAID con mergerfs e ZFS
Se possiedi una grande collezione di file multimediali e anche dati più dinamici, puoi adottare una configurazione avanzata: dischi dati protetti da SnapRAID e un mirror ZFS per i dataset ad alta attività. In questo modo ottieni il meglio di entrambi i mondi: alta integrità, prestazioni e flessibilità.