Layout dello storage prima o sistema operativo NAS prima: quale decisione dovrebbe guidare la realizzazione di un nuovo NAS?

Eva Wong è la Technical Writer e smanettatrice residente di ZimaSpace. Una geek da sempre con una passione per homelab e software open-source, si specializza nel tradurre concetti tecnici complessi in guide accessibili e pratiche. Eva crede che l'auto-ospitare debba essere divertente, non intimidatorio. Attraverso i suoi tutorial, dà potere alla comunità di demistificare le configurazioni hardware, dalla costruzione del loro primo NAS al dominio dei container Docker.

Definisci i requisiti di storage prima di scegliere il sistema operativo NAS, ma non finalizzare un layout irreversibile del pool finché non avrai verificato che il sistema operativo candidato soddisfi tali requisiti. Inizia dal valore dei dati, dalla capacità utilizzabile, dalle dimensioni delle unità, dalla ridondanza, dall'espansione, dal carico di lavoro e dal ripristino. Poi restringi la scelta ai sistemi operativi che supportano quel modello e definisci la struttura esatta dell'array, del pool o dei vdev all'interno della piattaforma che manterrai effettivamente.

La vera scelta è: prima i requisiti o prima la piattaforma

“Prima il layout dello storage” può significare due cose diverse. Può voler dire definire quanta protezione, capacità, prestazioni ed espandibilità servono al server, oppure impegnare dischi specifici in un mirror, un gruppo RAIDZ, un array con parità o un profilo Btrfs prima di aver scelto il sistema operativo. Solo la prima interpretazione è costantemente sicura.

“Prima il sistema operativo NAS” può anche significare scegliere un modello di gestione adatto al proprietario oppure lasciare che un'interfaccia rifinita determini automaticamente l'architettura di storage. La prima opzione può essere razionale; la seconda rischia di far scoprire in seguito che la piattaforma scelta non può utilizzare unità di capacità diversa, espandersi nel modo previsto o importare il filesystem desiderato.

Il confronto esistente di ZimaSpace tra CasaOS, ZimaOS e Unraid per i NAS con unità di diversa capacità mostra perché interfaccia e storage non possono essere completamente separati. La sequenza corretta è requisiti, rosa di compatibilità e quindi implementazione.

Fase della decisione Scegliere prima del sistema operativo NAS Scegliere dopo aver definito la rosa dei sistemi operativi NAS
Importanza dei dati Primari, sostituibili, di archivio o temporanei Quali funzionalità della piattaforma proteggono ciascuna classe
Obiettivo di capacità utilizzabile Necessità attuale e crescita realistica Efficienza esatta dell'array o del pool
Tolleranza ai guasti Quanti guasti alle unità e quanto tempo di inattività sono accettabili Mirror, parità, RAIDZ, Btrfs o un'altra implementazione supportata
Inventario delle unità Numero, capacità, interfaccia, stato di salute e disponibilità di sostituzione Se il sistema operativo accetta correttamente quella combinazione
Schema di espansione Sostituire coppie, aggiungere un'unità, aggiungere vdev o aggiungere un altro chassis Procedura di espansione esatta supportata
Carico di lavoro Backup, contenuti multimediali, file di piccole dimensioni, VM, database o videosorveglianza Impostazioni di posizionamento di dataset, cache, tier, record e app
Obiettivo di ripristino Cosa deve essere ripristinato per primo e da chi Procedura di esportazione della configurazione, importazione del pool, sostituzione e migrazione

Inizia dai dati e dal modello di guasto

Indica quali dati sono insostituibili, quali possono essere scaricati di nuovo, quali cambiano frequentemente e quali applicazioni non possono tollerare lunghe pause di accesso allo spazio di archiviazione. Un archivio di famiglia, un repository di backup, una libreria multimediale, un datastore per macchine virtuali e un pool di conservazione per NVR possono usare gli stessi dischi, ma richiedono priorità diverse in termini di ridondanza, snapshot e ripristino.

OpenZFS documenta che un pool è costituito da dispositivi virtuali di primo livello, la cui struttura determina la ridondanza e il comportamento in caso di guasto. I suoi concetti sui vdev rendono chiara la conseguenza in fase di pianificazione: il nome di un filesystem non descrive il livello di protezione se non viene definita anche la disposizione dei dispositivi sottostanti.

Definisci lo stato di errore accettabile prima di scegliere un'interfaccia di marca. Decidi se il guasto di un solo disco può lasciare il sistema degradato, se deve essere tollerato il guasto di due dischi, quanto può durare una ricostruzione e se un backup indipendente può ripristinare i dati in caso di perdita dell'intero array.

Le dimensioni delle unità e l'espansione possono escludere presto un sistema operativo

Un set abbinato di nuove unità offre possibilità diverse rispetto a una raccolta di dischi riutilizzati da 4 TB, 8 TB e 16 TB. I mirror convenzionali e i gruppi con parità possono sacrificare capacità o richiedere un'espansione per gruppi, mentre altri modelli di archiviazione sono progettati per aggiungere gradualmente dischi dati di capacità diverse.

La guida ufficiale all'array di Unraid stabilisce che nessun disco dati può superare la capacità del disco di parità e consiglia di riservare gli SSD ai pool di cache anziché all'array principale di parità. Non si tratta di un'impostazione secondaria: determina quali unità esistenti resteranno utili e come acquistare le unità per la prossima espansione.

Se il piano di crescita prevede di «aggiungere un'unità non abbinata ogni volta che lo spazio si esaurisce», escludi le piattaforme che richiedono di ricostruire gruppi fissi, a meno che il proprietario non accetti una migrazione successiva. Se il piano prevede di «sostituire coppie in mirroring con unità più grandi e abbinate», un modello di archiviazione ottimizzato per l'espansione incrementale con unità di capacità diverse può aggiungere complessità inutile.

-15% OFF

Il sistema operativo NAS determina quali configurazioni sono native

Dopo aver definito i requisiti, seleziona una rosa di sistemi operativi in base ai modelli di archiviazione che gestiscono nativamente e in modo trasparente. Un sistema operativo può supportare tecnicamente un filesystem, pur non offrendo avvisi integrati, flussi di lavoro per la sostituzione, stime della capacità o il ripristino della configurazione per il modo in cui intendi utilizzarlo.

TrueNAS espone un flusso di lavoro per la creazione dei pool in cui l'utente seleziona i layout, le dimensioni dei dischi, i dispositivi dati e il numero di vdev. L'attuale documentazione sulla creazione dei pool di TrueNAS illustra che la piattaforma prevede che l'architettura dello storage venga finalizzata attraverso il modello ZFS supportato, anziché assemblata indipendentemente.

Non dare per scontato che installare un'interfaccia web su Linux renda ogni pool sottostante gestibile allo stesso modo. La piattaforma potrebbe visualizzare solo lo storage che ha creato o registrato, mentre il ripristino avanzato dipende ancora dagli strumenti da riga di comando e dalla documentazione del filesystem sottostante.

Non creare il pool definitivo prima di aver verificato la compatibilità del sistema operativo

Un pool creato prematuramente può vincolare i dati a un'implementazione che il sistema operativo NAS preferito non è in grado di importare, monitorare, espandere o riparare attraverso il normale flusso di lavoro. Anche quando due sistemi supportano la stessa famiglia di filesystem, i flag delle funzionalità, la crittografia, i percorsi dei dispositivi, gli ambienti di avvio e i dataset applicativi possono complicare la migrazione.

OpenMediaVault documenta che i filesystem montati al di fuori della sua interfaccia non vengono registrati automaticamente nel database backend per la creazione delle cartelle condivise. Il suo modello di integrazione dei filesystem mostra perché «Linux riesce a montarlo» non equivale a «la piattaforma NAS riesce a gestirlo correttamente».

Usa dischi di riserva o dischi virtuali per creare prima un prototipo del sistema operativo candidato. Verifica la creazione dei pool e delle condivisioni, gli snapshot, gli avvisi, la sostituzione, l'espansione, l'esportazione e l'importazione prima di spostare i dati principali. Il test dovrebbe convalidare il percorso di gestione, non limitarsi a dimostrare che il programma di installazione riesce a vedere le unità.

Il posizionamento dei carichi di lavoro viene dopo aver definito i confini della piattaforma

La fase dei requisiti dovrebbe identificare i carichi di lavoro, ma il posizionamento preciso dovrebbe attendere la scelta del sistema operativo e degli strumenti di archiviazione. Un dataset per macchine virtuali, un livello di metadati, un pool applicativo, un'area di lavoro temporanea per i download e un archivio multimediale potrebbero richiedere dispositivi diversi, ma le funzioni di tiering e i controlli sui dataset disponibili variano in base alla piattaforma.

Btrfs consente di aggiungere, rimuovere o sostituire dispositivi e può convertire i profili di dati e metadati quando è disponibile spazio di lavoro sufficiente. La documentazione ufficiale sulla gestione dei volumi dimostra un modello più flessibile rispetto alla pianificazione con vdev fissi, ma tale flessibilità richiede comunque monitoraggio e competenze operative.

L’analisi di ZimaSpace sui tier di lavoro NVMe per VM e database fornisce il test del carico di lavoro. Definisci l’esigenza prima del sistema operativo, poi implementa il tier utilizzando il modello di storage supportato in sicurezza dalla piattaforma scelta.

Il ripristino deve essere progettato prima di entrambe le scelte finali

Una build NAS non è completa quando il pool viene montato. Il proprietario dovrebbe sapere come reinstallare il dispositivo di avvio, ripristinare la configurazione del NAS, importare lo storage superstite, recuperare le chiavi di crittografia, sostituire un disco guasto e ripristinare i dati quando il pool non può essere importato.

Il layout dello storage determina cosa sopravvive al guasto di un disco, mentre il sistema operativo NAS determina quanto chiaramente viene presentato lo stato superstite e quanta configurazione può essere esportata. Un pool resiliente con percorsi delle applicazioni non documentati può comunque essere difficile da ripristinare; un sistema operativo ben progettato non può recuperare dati che esistevano soltanto su un disco non ridondante guasto.

Questo è il limite oltre il quale fermarsi: se il piano di ripristino dipende da una funzionalità esclusiva di un solo sistema operativo, quella piattaforma deve essere selezionata prima di definire il layout finale. Se il ripristino dipende principalmente da filesystem portabili e dalla configurazione dichiarativa, rimane maggiore flessibilità nella scelta del sistema operativo.

Utilizza un processo di selezione in tre passaggi

  1. Descrivi i requisiti di capacità, inventario dei dischi, carico di lavoro, tolleranza ai guasti, crescita e ripristino senza nominare alcun sistema operativo.
  2. Escludi i sistemi operativi che non possono soddisfare tali requisiti tramite un modello di archiviazione documentato e manutenibile.
  3. Prototipa le piattaforme rimanenti usando dischi di riserva o virtuali e verifica creazione, guasto, sostituzione, espansione, esportazione e importazione.
  4. Seleziona il sistema operativo il cui flusso di lavoro abituale corrisponde alle competenze del proprietario e alla sua disponibilità a occuparsi della manutenzione.
  5. Definisci il layout esatto di array, pool, vdev, filesystem, dataset, cache e archiviazione delle applicazioni all’interno di quella piattaforma.
  6. Registra il progetto e ripristinalo una volta prima di trasferire dati insostituibili.

La sequenza evita due errori comuni: scegliere un’interfaccia attraente che non supporta le unità previste e costruire un pool tecnicamente elegante che il sistema operativo NAS scelto alla fine non può gestire senza soluzioni alternative non supportate.

Quale decisione dovrebbe venire prima?

Lascia che siano i requisiti di storage a guidare la scelta quando

Lascia che siano i requisiti a guidare la scelta quando le dimensioni delle unità, la ridondanza, la crescita o il comportamento del carico di lavoro impongono vincoli rigidi. Questo è particolarmente importante per unità miste, grandi gruppi RAIDZ, conservazione delle registrazioni di videosorveglianza, storage per macchine virtuali o sistemi in cui l’espansione deve avvenire senza una migrazione completa.

Lascia che la rosa di sistemi operativi NAS guidi il layout finale quando

Lascia che la rosa di piattaforme controlli l’implementazione quando il proprietario dà valore alla sostituzione integrata, agli avvisi, allo storage per le app, all’esportazione della configurazione e al ripristino guidato. Seleziona solo layout supportati dal sistema operativo NAS scelto attraverso il normale percorso di gestione.

Riconsidera l’hardware quando nessuna delle due opzioni è adatta

Cambia l’inventario delle unità, aggiungi un livello SSD separato, separa lo storage dal calcolo oppure rimanda la realizzazione quando nessun sistema operativo è in grado di soddisfare i requisiti in modo pulito. Forzare una combinazione incompatibile crea lavoro di migrazione futuro proprio quando i dati sono più difficili da spostare.

Domande frequenti

Puoi scegliere il sistema operativo NAS prima di acquistare i dischi?

Sì, purché i requisiti del carico di lavoro e dell’espansione siano già noti. Usa la documentazione del sistema operativo per determinare i layout supportati, il numero minimo di dischi, il dimensionamento della parità, i ruoli degli SSD, i requisiti del controller e le procedure di sostituzione prima di acquistare il set definitivo di unità.

Lo stesso pool ZFS può essere spostato tra sistemi operativi NAS?

A volte, ma la compatibilità dipende dalle funzionalità dei pool supportate, dalla crittografia, dal comportamento di importazione, dall’accesso ai dispositivi, dai dataset di sistema e dalla configurazione delle applicazioni. Considera l’importazione multipiattaforma come un percorso di migrazione da testare, non come un’ipotesi.

I principianti dovrebbero accettare il layout del pool suggerito?

Solo dopo aver verificato capacità utilizzabile, tolleranza ai guasti, espansione, carico di lavoro e requisiti di backup. Un layout suggerito può essere un punto di partenza sicuro, ma non può conoscere il valore dei dati né il piano futuro del proprietario per la sostituzione delle unità.

Verdetto finale

Definisci prima i requisiti di storage, non un’implementazione dello storage già completamente vincolata. Quindi restringi la scelta ai sistemi operativi NAS che supportano tali requisiti e finalizza il layout esatto all’interno della piattaforma scelta. Quest’ordine preserva la disciplina architetturale senza fingere che il sistema operativo sia indipendente dall’array, dal pool, dal file system, dai flussi di espansione e dalle procedure di ripristino che deve gestire.

Confronti tra prodotti

Altro da leggere

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.