Produrre i propri NAS è un'attività che mi ha sempre incuriosito. È più economico di un NAS commerciale? È più potente? Cosa si può fare con un sistema operativo open source? Purtroppo non ho il budget, il tempo o l'uso per costruire il mio NAS. Altri lo hanno già fatto e ne parlano in modo molto più dettagliato di quanto potrei scrivere io.
Per affrontare un argomento che ritengo possa trovare spazio su MyNAServer.com, ho deciso di riprendere un articolo già esistente di Michael Lynch, uno sviluppatore americano. L'articolo originale in inglese è sufficientemente dettagliato per presentare sia i componenti necessari, sia per entrare nel merito della realizzazione del NAS stesso. Come vedrete, l'articolo è ben documentato e l'autore spiega cosa si sarebbe potuto migliorare e le difficoltà incontrate.
Spero che la lettura di questo progetto vi piaccia quanto è piaciuta a me. Buona lettura!
Quest'anno ho deciso di costruire da solo il mio primo server NAS. Si tratta di un sistema da 32 TB che archivia i miei dati personali e professionali utilizzando software open source.
Il server stesso è costato 531 $ e ho acquistato quattro unità per 732 $, portando il costo totale a 1263 $. Il prezzo di questo sistema è simile a quello dei server NAS disponibili in commercio, ma offre maggiore potenza e opzioni di personalizzazione.
In questo articolo spiegherò come ho scelto i componenti, gli errori che ho commesso e i miei consigli per chiunque voglia costruire il proprio server.
Contesto
Perché costruire un server NAS domestico?
NAS è l'acronimo di network-attached storage. Il compito principale di un server NAS è quello di memorizzare i dati e renderli disponibili ai dispositivi della rete.
Allora perché avere un server interamente dedicato ai dati? Dopo tutto, ogni computer memorizza dati.
Lo trovo utile per duplicare l'archiviazione dei dati degli altri sistemi. Ogni tanto aggiorno la mia workstation principale e il mio portatile e la migrazione dei dati da un computer all'altro è sempre stata un problema. Un server di archiviazione dedicato elimina la maggior parte della migrazione dei dati e facilita la condivisione dei file tra i miei sistemi.
Ho anche molti dati. Sono un accumulatore di dati, quindi conservo tutte le foto digitali che ho scattato, tutte le e-mail che ho inviato o ricevuto negli ultimi 20 anni e il codice sorgente di tutti i miei progetti personali. Il totale è attualmente di 8,5 TB.
La più grande fonte di dati è la mia collezione di DVD e Blu-Ray. Non mi piace affidarmi ai servizi di streaming per avere a disposizione i miei contenuti preferiti, quindi continuo a comprare copie fisiche di film e serie. Non appena ricevo un nuovo disco, copio l'immagine grezza e creo un file video in streaming. Tra la copia ISO grezza e gli MP4 in streaming, un singolo disco può occupare 60 GB di spazio su disco.
Che cos'è un homelab?
"Homelab" è un termine familiare che ha guadagnato popolarità negli ultimi anni.
Un homelab è un luogo in casa dove si può sperimentare con l'hardware o il software di un computer che di solito si trova in un ufficio o in un centro dati. Può essere utilizzato come ambiente di formazione per l'apprendimento di nuove competenze lavorative o semplicemente come luogo in cui giocare con tecnologie interessanti.
Perché costruire un SIN fai da te?
Se siete nuovi al mondo dei laboratori domestici o non avete esperienza nella costruzione di PC, non vi consiglio di costruire un NAS fatto in casa.
Esistono soluzioni standard che offrono funzionalità simili con una curva di apprendimento più agevole.
Prima di costruire il mio server NAS domestico, ho usato un Synology DS412+ a 4 unità per sette anni. Onestamente, ho amato il mio Synology. È stato uno dei migliori acquisti che abbia mai fatto. È stata una delicata introduzione al mondo dei server NAS ed è da qui che vi consiglio di iniziare se non siete sicuri di tutto ciò che riguarda i NAS.
Qualche mese fa, il mio Synology non si è avviato e ha iniziato a produrre un rumore di scatto. Un brivido mi corse lungo la schiena quando mi resi conto di quanto fossi diventato dipendente da quell'unico dispositivo. I server Synology non sono riparabili dall'utente, quindi se una parte si rompe dopo la garanzia, è necessario sostituire l'intero server. E se siete stupidi come me e avete usato un formato di archiviazione proprietario di Synology, non potete accedere ai vostri dati senza un altro sistema Synology (modifica: un lettore mi ha mostrato che è possibile recuperare un volume Synology Hybrid RAID da un sistema non Synology).
Fortunatamente, la mia vecchia Synology ha ripreso vita dopo che l'ho ripulita e ho reinstallato le unità, ma questo è stato un primo segnale di allarme. Ho deciso di passare a TrueNAS, che offre un'implementazione open source di un formato di archiviazione aperto.
TrueNAS e ZFS
TrueNAS (precedentemente noto come FreeNAS) è uno dei leader mondiali nel settore dei sistemi di i sistemi operativi più diffusi per i server di archiviazione. È open source e esiste da quasi 20 anni, il che lo rende una scelta affidabile.
TrueNAS utilizza ZFS, un file system progettato specificamente per i server di archiviazione. I file system tradizionali, come NTFS o ext4, vengono eseguiti sopra un volume di dati che gestisce i livelli inferiori di I/O del disco. ZFS gestisce tutto lo stack, dalla logica a livello di file all'I/O del disco. Il controllo completo di ZFS gli conferisce maggiore potenza e prestazioni rispetto ad altri file system.
Ecco alcune delle caratteristiche interessanti di ZFS:
- Aggregazione di più dischi fisici in un unico file system
- Riparazione automatica dei dati danneggiati
- Creare istantanee point-in-time dei dati su disco (simile alla funzione Time Machine di OS X).
- Cifratura o compressione opzionale dei dati su disco.
Prima di costruire questo sistema, non avevo alcuna esperienza con ZFS, quindi ero ansioso di provarlo.
Pianificazione dello stoccaggio
Stima delle esigenze di capacità di stoccaggio
Quando ho acquistato il mio NAS Synology, inizialmente ho installato tre unità da 4 TB e ho lasciato il quarto slot vuoto. In questo modo ho ottenuto un totale di 7TB di spazio utilizzabile con Synology Hybrid Raid. Tre anni dopo, stavo esaurendo lo spazio, così ho aggiunto una quarta unità, portando lo spazio totale utilizzabile a 10 TB.
Ho deciso di applicare la stessa strategia al mio nuovo edificio. Volevo un sistema che rispondesse alle mie esigenze attuali e che potesse crescere. Il mio obiettivo approssimativo era di iniziare con 20 TB di spazio di archiviazione utilizzabile e altri 30 TB se avessi aggiunto altre unità in seguito.
ZFS non consente di aggiungere un nuovo disco a un pool esistente, ma questa caratteristica è in fase di sviluppo. Spero che quando avrò bisogno di espandere il mio spazio di archiviazione, questa funzione sarà disponibile in TrueNAS.
Molti dischi piccoli o meno dischi grandi?
ZFS è progettato per sopravvivere ai guasti del disco, quindi memorizza ogni blocco di dati in modo ridondante. Questa caratteristica complica la pianificazione della capacità, poiché lo spazio di archiviazione totale utilizzabile non è solo la somma della capacità di ciascun disco.
ZFS crea file system da "pool" di dischi. Più dischi ci sono nel pool, più ZFS può utilizzare in modo efficiente la loro capacità di archiviazione. Ad esempio, se si assegnano a ZFS due dischi da 10 TB, è possibile utilizzare solo metà della capacità totale del disco. Se invece si utilizzano cinque unità da 4 TB, ZFS offre 14 TB di spazio di archiviazione utilizzabile. Anche se lo spazio totale su disco è lo stesso in entrambi gli scenari, i cinque dischi più piccoli offrono 40 % di spazio utilizzabile in più.
Quando si costruisce un server NAS domestico, è necessario decidere se utilizzare una quantità minore di dischi grandi o una quantità maggiore di dischi piccoli. I dischi più piccoli sono generalmente più economici in termini di $/TB, ma sono più costosi da gestire. Due dischi da 4 TB richiedono il doppio dell'elettricità rispetto a un singolo disco da 8 TB.
Volevo ridurre al minimo l'ingombro fisico del mio server, quindi ho optato per dischi rigidi per NAS più grandi e meno numerosi.
RAID-Z1, Z2 o Z3?
ZFS offre diverse opzioni di ridondanza: raid-z1, raid-z2 e raid-z3. La differenza principale è la robustezza. Il Raid-z1 può sopravvivere a un guasto del disco senza perdere i dati. Il raid-z2 può sopravvivere a due guasti simultanei del disco e il raid-z3 a tre.
Ciò che si guadagna in robustezza, si paga in termini di spazio di archiviazione utilizzabile. Con cinque dischi rigidi da 4 TB, questa è la quantità di spazio di archiviazione utilizzabile in ciascuna modalità ZFS:
tipo ZFS | Stoccaggio utile | % di capacità totale |
---|---|---|
raid-z1 | 15,4 TB | 77.2% |
raid-z2 | 11,4 TB | 57.2% |
raid-z3 | 7,7 TB | 38.6% |
Ho scelto il raid-z1. Con pochi dischi, la probabilità che due dischi si guastino contemporaneamente è piuttosto bassa.
Tenete presente che ZFS non è una strategia di backup. ZFS è in grado di proteggere dai guasti del disco, ma ci sono molte minacce ai dati che ZFS non è in grado di mitigare, come la cancellazione accidentale, il malware o il furto fisico. Uso restic per replicare tutto ciò che è importante in backup criptati nel cloud.
Il bello di ZFS è che non devo ricorrere ai miei backup su cloud se un disco muore, ma posso sempre recuperarli se due dischi si guastano. Non sarebbe una passeggiata, ma non vale la pena di rinunciare a 20 % di spazio di archiviazione utilizzabile del mio server per il raid 2.
Maggiore è il numero di dischi fisici, maggiore è l'attenzione da prestare in caso di guasto di un disco. Se avessi un pool di 20 dischi, probabilmente utilizzerei il raid 2 o il raid 3.
Prevenzione di guasti simultanei del disco
Ingenuamente, la probabilità che due dischi si guastino contemporaneamente sembra estremamente bassa. Secondo Statistiche di BackblazeAd esempio, i dischi di alta qualità si guastano a una velocità compresa tra 0,5 e 4 % all'anno. Un rischio di 4 % all'anno corrisponde a una probabilità di 0,08 % in una determinata settimana. Due guasti simultanei si verificherebbero una volta ogni 30.000 anni, quindi tutto dovrebbe andare bene, giusto?
Il problema è che le unità non sono statisticamente indipendenti. Se un'unità si guasta, la sua vicina ha una probabilità significativamente maggiore di morire. Ciò è particolarmente vero se le unità sono dello stesso modello, provengono dallo stesso lotto e hanno gestito gli stessi carichi di lavoro.
Inoltre, la ricostruzione di un pool ZFS comporta uno sforzo insolito per tutti i dischi superstiti. Un disco che sarebbe durato qualche mese in più in condizioni di utilizzo normale potrebbe morire sotto il carico aggiuntivo della ricostruzione di un pool.
Alla luce di questi rischi, ho fatto il possibile per ridurre il rischio di guasti simultanei dei dischi. Ho scelto due diversi modelli di dischi di due diversi produttori. Per ridurre le possibilità di ottenere dischi dallo stesso lotto, li ho acquistati da fornitori diversi. Non posso dire quanto sia importante, ma non ha aumentato i costi in modo significativo, quindi perché no?
Come ho scelto i pezzi per il mio SIN
Scheda madre
La prima decisione è stata la dimensione della scheda madre. Mi è sempre piaciuta la forma compatta del mio Synology DS412+. Non ho mai costruito un computer con una scheda madre mini-ITX e questa mi è sembrata una buona occasione.
Ho scelto l'ASUS Prime A320I-K per alcuni motivi:
- Ha quattro porte SATA, quindi posso collegare quattro unità direttamente alla scheda madre.
- Supporta la grafica Radeon, quindi non dovrò acquistare una scheda grafica separata.
- È conveniente, a soli 98 $.
Ho guardato anche la B450, che era molto simile, ma quasi il doppio del prezzo. Il vantaggio principale sembrava essere un migliore supporto all'overclocking, di cui non avevo bisogno.
Processore
Da quello che ho letto, ZFS non è molto intensivo per la CPU. Ho fatto un test di base installando TrueNAS su un economico mini PC Dell OptiPlex 7040. Il processore veniva usato a malapena, quindi sembrava sicuro optare per un'opzione a basso consumo.
Il mio criterio principale per la scelta del processore era il supporto per la grafica Radeon, in modo da poter utilizzare l'uscita HDMI integrata nella scheda madre A320.
Ho scelto AMD Athlon 3000G. A soli 105 $, ha un buon rapporto qualità/prezzo, supporta la grafica Radeon ed è dotato di un'ampia gamma di funzioni. benchmark decenti della CPU.
Contenitore NAS
Quando ho costruito il mio ultimo server VM, ho usato un box di Fractal Design. È il mio case preferito, quindi sono tornato a Fractal Design per questo progetto.
Ho scelto il Fractal Design Node 304 neroun case mini-ITX compatto. Mi è piaciuto il design, più simile a un cubo che a una torre. Ha sei alloggiamenti per le unità, il che mi consente di iniziare con un numero sufficiente di unità e di avere spazio per crescere in futuro.
Disco (dati)
Avendo a disposizione sei alloggiamenti per i dischi, ho deciso di iniziare con quattro dischi da 8 TB, che si traducono in 22,5 TB di spazio di archiviazione utilizzabile in raid-z1. Se in futuro dovessi avere bisogno di espandermi, una quinta unità mi porterà a 30,9 TB e una sesta a 37 TB.
Nella gamma da 8 TB, non ci sono molte unità con velocità inferiore a 7200 giri/min, ma è possibile arrivare a 10000 giri/min. Per il mio NAS, le velocità superiori a 7200 rpm non farebbero differenza, poiché il collo di bottiglia è la rete. Un'unità da 10.000 giri/min sarebbe più rumorosa e consumerebbe più energia, ma non offrirebbe alcun guadagno in termini di prestazioni. (Nota dell'editore: tutti Le unità disco NAS sono elencate qui)
A un certo punto ho pensato di utilizzare 400 unità $ per il loro tasso di guasti pari a 0,5 %, ma mi sono reso conto che era irrazionale spendere il doppio per ridurre il tasso di guasti di qualche punto percentuale.
L'ultima insidia da evitare è Tecnologia SMR (registrazione magnetica a scaglie). ZFS non funziona bene sui dischi SMR, quindi se state costruendo un NAS, evitate i dischi SMR conosciuti. Se il disco è etichettato come CMR, si tratta di una registrazione magnetica convenzionale, adatta a ZFS.
Ho scelto il Toshiba N300 e il Seagate IronWolf. Ho visto recensioni positive su entrambi i forum TrueNAS e reddit. Entrambi i modelli hanno un prezzo compreso tra 210 e 230 dollari, un buon rapporto qualità/prezzo per lo spazio di archiviazione.
Disco (OS)
TrueNAS ha bisogno di un disco dedicato per il sistema operativo, ma da quello che ho letto non ha bisogno di molto. Il sistema operativo ha bisogno di almeno 2 GB di spazio, ma TrueNAS legge o scrive raramente sul disco operativo.
Ho scelto il Kingston A400 perché era incredibilmente economico: 32 $ per un'unità M.2 da 120 GB. Amo Dischi M.2 NVMe ! Non richiedono alcun cablaggio. Si inseriscono nella scheda madre, non occupano praticamente spazio e non devono più essere toccati.
Memoria
Nella mia ricerca, ho trovato spesso riferimenti alla "regola" secondo cui ZFS richiede 1 GB di RAM per ogni TB di spazio su disco nel sistema. Secondo lo sviluppatore di ZFS Richard Yao, questa regola è un mito. Alcune funzioni di ZFS, come la deduplicazione dei dati, richiedono molta RAM, ma ZFS funziona molto bene con una memoria limitata.
Trovo che la memoria sia estremamente fastidiosa da acquistare. Vorrei avere un processo più rigoroso per la scelta della RAM, ma non sono riuscito a trovare alcun benchmark o report affidabile per la RAM. Il mio procedimento è stato il seguente:
- Esaminare l'elenco delle barre RAM compatibili con la scheda madre ASUS A320I-K.
- Filtrare le opzioni da 32 GB o 64 GB che utilizzano solo due barre.
- Filtrare i marchi di cui mi fido (Corsair, Crucial, G.SKILL, Kingston, Samsung, Patriot, Mushkin, HyperX)
- Filtro per le opzioni sotto 150 $
Questo processo mi ha portato alla CORSAIR Vengeance LPX 32 GB CMK32GX4M2A2400C14 (2 x 16 GB) per 128 $.
Unità di alimentazione (PSU)
In termini di capacità di alimentazione, sarebbe stato sufficiente un qualsiasi alimentatore di consumo. Secondo PCPartPickerIl mio sistema ha bisogno solo di 218 W. Avrei scelto un alimentatore da 300-400 W, ma non c'erano opzioni semi-modulari con potenza inferiore. Ho quindi optato per il modello EVGA 110-BQ-0500-K1 da 500 W.
Cavi SATA a 90 gradi
Un articolo che non avevo mai acquistato prima era un cavo SATA a 90 gradi. Non mi sono reso conto di averne bisogno finché non ho visto che tra la scheda madre e l'alimentatore non c'era abbastanza spazio per collegare un cavo SATA standard. Questi sottili cavi a 90 gradi hanno risolto il problema.
Cosa manca?
Ci sono alcuni componenti che ho intenzionalmente escluso dalla mia costruzione per motivi di prezzo, complessità o spazio fisico.
Scheda grafica (GPU)
Con lo spazio fisico e le porte limitate sulla scheda madre, non volevo una scheda grafica dedicata. Ho scelto una combinazione di scheda madre e processore che supporta il rendering grafico senza una scheda esterna.
Controller host bus (HBA)
Molti NAS includono un controller bus host (HBA). Un HBA è un chip che si inserisce nello slot PCI di una scheda madre e aumenta il numero di unità che la scheda madre può supportare.
ZFS richiede di riflashare il firmware dell'HBA in un processo che sembra piuttosto noioso e confuso. Ho deciso di abbandonare l'HBA fino a quando non avrei avuto bisogno di più spazio di archiviazione. L'ASUS A320I-K dispone di quattro porte SATA, sufficienti per le mie esigenze iniziali. Mi sono assicurato di lasciare uno slot PCI vuoto per un futuro HBA.
RAM ECC
Durante le ricerche sulle varie build di TrueNAS, ho visto diversi articoli in cui si afferma che la RAM ECC (RAM con codice di correzione degli errori) è essenziale per evitare la corruzione dei dati. Alla fine ho deciso di non usare la RAM ECC e di usare la RAM standard dei consumatori.
Ovviamente non voglio che il mio server corrompa i miei dati nella RAM, ma uso computer da 30 anni senza RAM ECC e non ho mai notato alcuna corruzione dei dati. Se dovessi costruire un server per un carico pesante di utenti multipli tutto il giorno, opterei per una configurazione con RAM ECC. Per l'uso domestico, penso che una semplice RAM di livello consumer dovrebbe andare bene.
Disco SLOG
Molte build di ZFS includono un SSD separato e dedicato, chiamato SLOG (registro degli intenti separato).
L'idea è che la scrittura su un'unità SSD è molto più veloce rispetto alla scrittura su più unità rotanti. Quando un'applicazione scrive dei dati, ZFS può scriverli rapidamente sull'unità SSD, comunicare all'applicazione che la scrittura è andata a buon fine e quindi spostare in modo asincrono i dati dall'unità SSD al pool di archiviazione. SLOG migliora notevolmente la velocità di scrittura.
Ho scelto di non integrare un'unità SLOG, poiché sono limitato dalle porte e dagli alloggiamenti delle unità. Aggiungere un'unità SLOG significava rinunciare all'unico slot PCI o a uno dei sei alloggiamenti per le unità. Preferisco lasciarmi lo spazio per aumentare la capacità in un secondo momento.
Elenco delle parti
Categoria | Componente | Premi |
---|---|---|
CPU | AMD Athlon 3000G | $105.13 |
Scheda madre | ASUS Prime A320I-K | $97.99 |
Scheda grafica | Non è necessario: la scheda madre supporta la grafica | $0 |
Disco (OS) | Kingston A400 120GB | $31.90 |
Memoria | CORSAIR Vengeance LPX 32 GB CMK32GX4M2A2400C14 (2 x 16 GB) | $127.99 |
Alimentazione | EVGA 110-BQ-0500-K1 500W 80+ Bronze semi-modulare | $44.99 |
Alloggiamento | Fractal Design Node 304 nero | $99.99 |
Cavi SATA | Cavi SATA Silverstone Tek ultrasottili laterali a 90 gradi (x2) | $22.30 |
Totale (senza dischi) | $530.29 | |
Dischi (archiviazione) | Toshiba N300 HDWG480XZSTA 8TB 7200 RPM (x2) | $372.79 |
Dischi (archiviazione) | Unità disco NAS IronWolf da 8 TB di Seagate a 7200 giri/min (x2) | $359.98 |
Totale | $1,263.06 |
* Attenzione: questa scheda madre potrebbe non funzionare con il processore AMD Athlon 3000G. Vedere i dettagli di seguito.
Confronto con i prodotti disponibili in commercio
A titolo di confronto, ecco alcune soluzioni disponibili in commercio a prezzi simili.
Prodotto | 2022 NAS FAI DA TE | Synology DS920+ | QNAP TS-473A-8G-US |
---|---|---|---|
Numero di campate | 6 | 4 | 4 |
RAM | 32 GB | 4 GB | 4 GB |
RAM massima | 32 GB | 8 GB | 8 GB |
Parametri di riferimento della CPU | 4479 | 3002 | 4588 |
Premi | $530.29 | $549.99 | $549 |
Il costo totale della mia costruzione è simile a quello delle soluzioni commerciali, ma il rapporto qualità-prezzo è superiore. Ho 8 volte più RAM e non sono vincolato a un sistema operativo chiuso e specifico del produttore.
Foto della costruzione
Creare il server con TinyPilot
I lettori di vecchia data di questo blog ricorderanno che Ho usato il Raspberry Pi per creare uno strumento specifico per la costruzione e la gestione dei server. Si chiama TinyPilot. È stato il terzo server che ho costruito con TinyPilot e il primo che ho costruito con il nuovo TinyPilot Voyager 2.
Sono ovviamente di parte, ma costruire questo server con il Voyager 2 è stato molto divertente! Non ho mai dovuto collegare una tastiera o un monitor al server. Ho potuto vedere l'uscita video, avviare il BIOS e montare l'immagine di installazione di TrueNAS dal mio browser web.
L'unico difetto che ho riscontrato è stato l'aggiornamento del BIOS. TinyPilot è in grado di montare immagini disco come i file .img e .iso, ma non sa ancora come condividere i file grezzi con il computer di destinazione. Quando ho dovuto caricare il file .CAP per l'aggiornamento del BIOS ASUS, ho vergognosamente messo i file su una chiavetta USB invece di mantenere una build TinyPilot pura. Spero di aggiungere presto il supporto per questo scenario in modo che TinyPilot possa gestire il mio prossimo aggiornamento del BIOS.
Questa versione del BIOS è incompatibile? O sono un idiota?
Quando ho installato tutti i componenti, il sistema si è acceso, ma non c'era alcuna visualizzazione video.
Oh no! Ho forse frainteso i requisiti della scheda madre per il video on-board? Ho eseguito tutte le consuete operazioni di diagnostica: azzeramento della RAM, azzeramento della CPU e controllo di tutti i cavi: stesso risultato.
Dopo aver cercato su Google con un po' di panico, ho visto che l'ASUS Prime A320I-K richiede un aggiornamento del BIOS per poter funzionare con l'Athlon 3000G. Ricordo di aver visto questo avviso mentre selezionavo i pezzi e di averlo ignorato. "Ho fatto gli aggiornamenti del BIOS", ho pensato. "Non è un problema!"
Non ho pensato a come aggiornare il BIOS senza una CPU.
Fortunatamente, la CPU Ryzen 7 del mio server VM homelab 2017 era compatibile con l'ASUS Prime A320. Ho preso in prestito l'alimentatore e la scheda grafica di quel server e sono riuscito ad avviare il mio server NAS!
Stranamente, anche dopo aver avviato con successo il sistema con le parti prese in prestito, la scheda madre ha segnalato che era in esecuzione la versione 2203 del BIOS, che secondo ASUS è compatibile con la CPU AMD Athlon 3000G. Ma ho aggiornato all'ultimo BIOS, che è il 5862.
Dopo l'aggiornamento a 5862, non sono ancora riuscito ad avviare il sistema. Mi sono quindi reso conto che stavo collegando il mio cavo HDMI all'uscita DisplayPort del server.
Era davvero necessario prendere in prestito tutti questi pezzi? Ci sono due possibilità:
- Che stupido, mi sono accorto che il mio cavo HDMI era collegato all'uscita DisplayPort della scheda madre solo dopo aver aggiornato il BIOS.
- ASUS è stupida e ha erroneamente indicato l'Athlon 3000G come compatibile con la versione 2203 del BIOS, quando invece non lo è.
Normalmente accetterei la colpa, ma il BIOS ASUS era talmente difettoso che il problema potrebbe essere di ASUS. Ad ogni modo, mi sono sentito sollevato nel poter finalmente avviare il NAS senza parti prese in prestito.
Banchi di prova delle prestazioni
Una delle sorprese che ho avuto durante la stesura di questo articolo è che non sono riuscito a trovare alcuno strumento di benchmarking valido per misurare le prestazioni del NAS. Esistono strumenti che funzionano sul server NAS stesso per valutare l'I/O del disco locale, ma non riflettono l'uso effettivo. La maggior parte del mio utilizzo avviene attraverso la rete, quindi un benchmark delle prestazioni del disco locale ignorerà assolutamente i colli di bottiglia nello stack di rete.
Così ho creato il mio benchmark rudimentale. Ho generato due serie di dati di file casuali, poi ho utilizzato robocopia per misurare le velocità di lettura e scrittura tra il mio computer principale e il mio NAS fai da te. Non si è trattato di un test rigoroso: non l'ho eseguito su una rete isolata e non ho interrotto tutti gli altri processi sul mio desktop durante il test. Ho eseguito gli stessi test con il mio vecchio Synology DS412+ per confronto.
Il primo set di file consisteva in 20 GB di file da 1 GB e l'altro set in 3 GB di file da 1 MB. Ho fatto la media di tre test su volumi crittografati e non crittografati.
Le prestazioni hanno raggiunto un picco di 111 MB/s (931 Mb/s), che è sospettosamente vicino a 1 Gb/s. Ciò suggerisce che il fattore limitante è l'hardware di rete, in quanto il mio interruttoreIl mio computer desktop e i server NAS hanno tutti porte Ethernet da 1 Gb/s.
Prestazioni di lettura
Per quanto riguarda i volumi non criptati, sono rimasto sorpreso nel vedere il mio Synology arrugginito e vecchio di 7 anni superare il mio TrueNAS nuovo di zecca. Synology è risultato 31 % più veloce nella lettura di file di piccole dimensioni e 10 % più veloce su file di grandi dimensioni.
L'egemonia di Synology è stata di breve durata, poiché è crollata completamente sulla crittografia. La velocità di lettura di Synology è scesa da 67-75 % sui volumi crittografati, mentre la crittografia non ha avuto alcun effetto su TrueNAS. Questo ha permesso a TrueNAS di superare Synology di 2,3 volte per i file di piccole dimensioni e di 3 volte per i file di grandi dimensioni su un volume crittografato. Conservo la maggior parte dei miei dati su volumi crittografati, quindi questo test rappresenta in modo più accurato il mio utilizzo tipico.
Prestazioni di scrittura
Sebbene il mio vecchio Synology sia riuscito a superare TrueNAS in lettura, non è stato così in scrittura. Anche su un volume non crittografato, TrueNAS è risultato più veloce di % su file di piccole dimensioni, ed entrambi i sistemi hanno ottenuto prestazioni simili su file da 1 GB.
Ancora una volta, l'introduzione della crittografia nell'equazione annulla le prestazioni di scrittura di Synology. Con la crittografia attivata, TrueNAS era 5,2 volte più veloce sui file di piccole dimensioni e 3,2 volte più veloce sui file di grandi dimensioni.
Consumo di energia
Ho usato un controllore per la misurazione del consumo energetico sul mio vecchio Synology e sul nuovo server TrueNAS:
Synology DS412+ | 2022 NAS | |
---|---|---|
In standby | 38 W | 60 W |
Al lavoro | 43 W | 67 W |
Il nuovo server consuma 60 % in più rispetto al mio vecchio Synology, il che è un po' sorprendente. Sto pagando circa 0,17 $/kWh, quindi il server costa circa 7,20 $/mese.
Non conosco bene i fattori che determinano il consumo di energia, ma una possibilità è l'alimentatore. Probabilmente Synology ha un'unità di alimentazione perfettamente dimensionata per gli altri componenti, mentre la mia unità di alimentazione da 500 W è probabilmente inefficiente per alimentare un sistema che richiede solo 15 % della sua capacità.
Riflessioni finali
Scheda madre
La mia più grande lamentela nei confronti dell'ASUS Prime A320I-K è la sua limitata compatibilità, ma potrei sbagliarmi.
A parte questo, il BIOS non mi ha entusiasmato. La sua utility di aggiornamento non era operativa. Dovrebbe essere in grado di scaricare e installare le ultime versioni del BIOS, ma quando ho provato ad aggiornarlo, mi ha detto che avevo il BIOS più recente, mentre non ce l'avevo. Ho dovuto aggiornare manualmente scaricando i file e caricandoli su una chiavetta USB.
Ho anche dimenticato che l'A320I-K supporta un massimo di 32 GB di RAM. Non sono sicuro che avrò mai bisogno di espandere la memoria, ma sarebbe stato bello avere un po' più di margine.
Correzione del driver di rete Realtek
Ho notato che l'adattatore Ethernet sulla scheda madre a volte si interrompeva quando il sistema era sottoposto a un forte carico di rete. A quanto pare, il driver FreeBSD per la scheda di rete Realtek dell'A320I-K ha problemi di stabilità, ma è possibile caricare il driver ufficiale con la seguente soluzione:
- Dalla dashboard web di TrueNAS, andare a Sistema > Regolabili.
- Aggiungere i due parametri seguenti:
Variabile | Valore | Tipo |
---|---|---|
if_re_load |
SÌ |
caricatore |
se_re_nome |
/boot/moduli/if_re.ko |
caricatore |
Alloggiamento
Sono rimasto deluso dal Nodo 304 di Fractal Design. Quando ho costruito il mio server VM con il Fractal Design Meshify C, il box mi ha sempre deliziato con caratteristiche che non avevo mai visto su altri box. In questa costruzione è stato il contrario. Continuavo a pensare: "Perché questo è un problema in questo caso, mentre non lo è mai stato per me?
È bello all'esterno, ma ho trovato difficile lavorarci. Non c'era quasi nessuna documentazione e alcuni meccanismi della scatola non erano evidenti.
Questo è il mio primo case mini-ITX e so che i progettisti di case devono fare dei sacrifici per ridurre al minimo le dimensioni, quindi forse lo sto giudicando troppo severamente.
CPU
Sono soddisfatto dell'Athlon 3000G, ma si è rivelato un prodotto eccessivamente potente per le mie esigenze. Il mio dashboard TrueNAS mostra che il carico della CPU è stato di 99 % di inattività per l'ultimo mese di utilizzo:
L'aspetto più importante della CPU è il supporto della tecnologia video Radeon di AMD, che mi ha evitato la necessità di una GPU. Per 105 $ è stato un ottimo affare.
Disco (dati)
È un po' troppo presto per giudicare i dischi, quindi tornate tra cinque anni e vedrete come mi piaceranno. Per ora, tutto va bene.
Il mio timore più grande era che le unità fossero troppo rumorose, ma non le ho mai sentite. L'unica volta che li ho sentiti è stato quando ho eseguito i test sulle prestazioni. È interessante notare che il rumore non era più forte durante la lettura o la scrittura, ma quando cancellavo i file tra un test e l'altro.
Unità di alimentazione (PSU)
Dopo aver visto che il sistema gira al minimo a 60 W, mi chiedo se avrei dovuto fare uno sforzo maggiore per scegliere un alimentatore di capacità inferiore. 500W sono più del doppio della capacità di cui ho bisogno, quindi forse avrei potuto ridurre il consumo di energia in standby del mio server con un'unità di alimentazione da 300-400W.
Disco (OS)
Il Kingston A400 funziona bene. TrueNAS sottopone l'unità OS a un carico talmente minimo che non ha molto da fare. Ha 90 GB liberi, quindi avrei potuto usare un'unità ancora più piccola.
I rapporti di TrueNAS non riportano praticamente alcuna attività del disco. C'è un piccolo I/O letto ogni settimana come parte di un'attività programmata predefinita per il controllo degli errori, ma questo è tutto.
TrueNAS
Io uso TrueNAS Core 13, che è la versione più matura di FreeBSD. L'altra opzione è TrueNAS Scaleche si basa su Debian, che ha una maggiore compatibilità hardware e software.
Venendo a TrueNAS, sapevo che l'interfaccia web del mio Synology sarebbe stata difficile da battere. È l'interfaccia più elegante e intuitiva che abbia mai visto per un dispositivo di rete. Hanno fatto un ottimo lavoro costruendo un'interfaccia utente pulita che risparmia all'utente finale i dettagli tecnici del file system sottostante: La versione del DSM 7 del sistema operativo Synology è ancora più avanzato).
TrueNAS ha il suo fascino da hacker, ma lo trovo un enorme passo indietro in termini di usabilità rispetto a Synology. L'interfaccia sembra essere stata progettata da qualcuno che disdegna qualsiasi cosa al di fuori della riga di comando.
Su TrueNAS, mi ci sono voluti diversi tentativi per creare un nuovo volume e condividerlo sulla mia rete. Si deve saltare tra diversi menu scollegati e non c'è alcuna guida su quale azione si debba intraprendere successivamente. Con Synology, l'interfaccia utente è fluida e guida l'utente attraverso tutte le impostazioni necessarie.
Ho trovato le applicazioni di terze parti molto più difficili da installare su TrueNAS. Uso Server multimediale Plex per lo streaming della mia collezione di film e TV, e Plex è un plugin preconfigurato su TrueNAS. Dovrebbe essere una delle applicazioni più facili da installare, ma mi ci è voluta un'ora per armeggiare e cercare nella documentazione. A confronto, l'installazione di Plex su Synology Per fare clic su una procedura guidata ci vogliono circa due minuti.
Rimango fedele a TrueNAS perché mi interessa più che altro bloccare la piattaforma e mi piace supportare il software libero. Ma avrei potuto scegliere un altro sistema operativo gratuito adatto ai NAS. Se dovessi consigliare un NAS a un amico che non è così ideologico, suggerirei Synology.
ZFS
ZFS è interessante, ma non ho riscontrato la necessità di utilizzare la maggior parte delle funzionalità che offre oltre al RAID.
Vedo persone che parlano di istantanee, ma io non ne ho trovato alcun uso. Ho già delle istantanee nella mia soluzione di backup Restic. Non sono particolarmente convenienti, ma uso restic da due anni e ricordo di aver dovuto recuperare i dati da un'istantanea solo una volta.
Una funzione interessante è quella delle istantanee crittografate. È possibile eseguire istantanee di un volume di dati senza doverli decifrare. Ho dei dati che voglio mantenere crittografati, ma non ho bisogno di accedervi molto spesso, quindi sarebbe utile poterne fare il backup regolarmente senza decifrarli.
In generale
Nel complesso, mi sto godendo il mio nuovo NAS e ho imparato molto da questa costruzione. Se fosse stata la mia prima esperienza con un NAS, sarei stato insoddisfatto e confuso, ma iniziare con il mio Synology mi ha permesso di introdurmi senza problemi alla tecnologia. Sento che le rotelline sono state tolte e sono pronto a smanettare con le potenti funzioni di ZFS e TrueNAS.