Saluti agli appassionati di ZimaBoard! Oggi siamo lieti di presentarvi un tutorial completo realizzato dal nostro membro della community, Tyrehl. Tyrehl non solo ti guida con competenza nel processo di installazione di ZFS su ZimaBoard, ma offre anche una panoramica completa dello ZimaBoard stesso.
Dalle intuizioni della community alle istruzioni dettagliate per l’installazione, l’articolo di Tyrehl è la tua risorsa completa per sbloccare tutto il potenziale sia di ZFS che dello ZimaBoard. Un sentito ringraziamento a Tyrehl per questo contributo arricchente, che colma il divario tra coinvolgimento della community e competenze tecniche. Iniziamo insieme questo viaggio per migliorare la tua esperienza con ZimaBoard. Buona esplorazione!
Introduzione
I computer a scheda singola (SBC) sono molto popolari negli ambienti home lab e negli ultimi anni hanno guadagnato terreno anche in ambito professionale e industriale. Oggi esiste un vasto ecosistema incentrato sull’edge computing e sui sistemi di piccole dimensioni.
È facile ottenere una potenza di calcolo decente, con vari SBC che offrono 4 core e molta RAM per diverse applicazioni. Dove di solito mancano è sul fronte dello storage. Le schede SD e lo storage Flash in generale sono generalmente lenti e soggetti a guasti in scenari con molte scritture. I dischi collegati via USB non offrono la stessa affidabilità, e scegliere un buon connettore USB-to-SATA non è banale.
Lo ZimaBoard ha un asso nella manica. Due porte SATA, la doppia Ethernet 100/1000 e varie opzioni di espansione PCIe rendono il sistema molto flessibile.
Quali sono i limiti di ciò che un SBC può realisticamente raggiungere, e perché lo storage è sempre un problema? Dov’è il giusto equilibrio tra una macchina compatta, che non eccelle in nessun compito in particolare, e un mostro di cavi con 6 dischi SATA che richiede un alimentatore ATX esterno?
Questo articolo mira a esplorare i punti di forza dello ZimaBoard e come possono essere sfruttati per metterlo a frutto. Senza finire con una configurazione ridicola e poco pratica.
Motivazione
Come accennato in precedenza, molta potenza di calcolo è facile da distribuire e utilizzare. Anche la memoria è economica, quindi lo storage diventa rapidamente il fattore limitante. Chiunque abbia dovuto gestire infrastrutture probabilmente ne è consapevole. Basta dare un’occhiata alle opzioni di storage di rete di k8s, alle varie piattaforme che promettono API compatibili con S3 per il tuo cluster, e a quanto sia fastidioso installarle e gestirle correttamente.
Lo ZimaBoard, con le sue eccellenti capacità di I/O, è un ottimo candidato per un NAS di piccole dimensioni o un server generico con storage locale resiliente. Ed ecco la sfida: come fornire uno storage tollerante ai guasti in un formato compatto, su una piattaforma che “funziona semplicemente” ed è operativamente noiosa.
Dal lato hardware, ci limiteremo a usare solo due dischi da 2,5 pollici alimentati e collegati via SATA sul retro della ZimaBoard. Questo crea una soluzione molto compatta senza la necessità di un alimentatore esterno o schede di espansione.
Meno è meglio
Avere tanto spazio di archiviazione è positivo, ma avere uno storage tollerante ai guasti è ancora meglio. Per questo serve un file system più avanzato che offra ridondanza dello storage.
ZFS offre capacità di RAID software superiori a quelle della maggior parte dei controller RAID hardware. È un file system davvero eccellente con molte altre funzionalità notevoli come snapshot incrementali, sincronizzazione tra sistemi remoti e pool di archiviazione, e crittografia.
L’attenzione oggi è esclusivamente sull’esecuzione ridondante dei dischi. Normalmente ZFS viene usato per gestire un array RAIDZ. Ma dato che ci limitiamo a due dischi, rimane solo un’opzione rilevante – il pool mirror ZFS. Questo dimezzerà effettivamente la capacità di archiviazione, ma allo stesso tempo ci offrirà una migliore ridondanza e la capacità di resistere al guasto di un singolo disco. Non è l’ideale, ma dovrà andare bene.
Hardware
Dischi
In generale, la community ZimaBoard consiglia di usare dischi da 2,5 pollici. Il loro vantaggio principale è che non necessitano di una linea a 12V per funzionare. Ci sono segnalazioni di test riusciti con dischi da 3,5 pollici, quindi i risultati possono variare. Nel mio caso ho scelto due SSD da 1TB. Puoi scegliere anche HDD se ti serve più capacità.
Connettori e accessori stampati in 3D
Lo Y-Splitter ufficiale è fortemente consigliato per collegare e alimentare i due dischi. Ci sono soluzioni alternative, come usare adattatori USB-to-SATA per l’alimentazione. È una soluzione poco elegante, ma funziona. Per tenere tutto insieme, un supporto doppio per HDD stampato in 3D funziona molto bene. Il risultato finale è un pacchetto molto portatile e dal profilo basso.


I link sono inclusi alla fine dell’articolo. Ho trovato questa versione molto compatta e pratica grazie alle dimensioni ridotte. Esistono anche varie staffe stampate in 3D per il montaggio a rack, se hai lo spazio per usarle.
Installazione di ZFS
La ZimaBoard viene fornita di default con Debian. Questa è anche la mia raccomandazione personale per una distribuzione solida che non ti darà problemi o sorprese. Per altre distribuzioni consulta la documentazione rispettiva e le istruzioni di installazione di ZFS.
Prima di iniziare, ricorda di aggiornare all’ultima versione LTS se possibile. Fai un backup dei tuoi dati così sarà facile smontare tutto e ricominciare da capo. E documenta ogni passaggio, così sarà più semplice risolvere eventuali problemi. Dai un’occhiata a script comando per un modo comodo di farlo.
Istruzioni dettagliate e casi d’uso avanzati sono documentati su https://wiki.debian.org/ZFS questa è la fonte primaria consigliata per configurare ZFS.
Prerequisiti
Assicurati che i repository HTTPS siano accessibili:
1 apt install -y lsb-release apt-transport-https
Aggiungi il repository Backports per la tua versione modificando /etc/apt/sources.list o aggiungendo un nuovo file di sorgenti sotto ‘/etc/apt/sources.list.d/’:
1 #determina il nome in codice o sostituiscilo manualmente qui sotto:
2 codename=$(lsb_release -cs)
3 #aggiungi il repository backports alla lista delle sorgenti:
4 echo “deb http://deb.debian.org/debian $codename-backports main contrib non-free”|sudo tee /etc/apt/sources.list.d/debian_backports.list && sudo apt update
Pacchetti ZFS
Infine, come da documentazione Debian, installa gli ultimi header Linux e i pacchetti ZFS rilevanti:
1 sudo apt install linux-headers-amd64;sudo apt install -t $codename-backports zfsutils-linux zfs-dkms
“Oh no – qualcosa è andato storto”
Il fallimento nell’installazione di ZFS è solitamente dovuto a un kernel vecchio o errato, o a header mancanti. È meglio rimuovere tutti i pacchetti relativi a ZFS, controllare gli header installati e rileggere la documentazione di installazione.
1 sudo dpkg -l | egrep ‘linux-image|linux-headers’
Creazione di un pool e di un file system
Elenca i dischi per ID:
1 ls -l /dev/disk/by-id/
2 ls -l /dev/disk/by-id/
3 lrwxrwxrwx 1 root root 9 22 Dic 15:29 ata-KINGSTON_SA400S37960G_50026B73818333D1 -> ../../sdb
lrwxrwxrwx 1 root root 9 22 Dic 15:29 ata-KINGSTON_SA400S37960G_50026B73818333DB -> ../../sda
4 lrwxrwxrwx 1
E crea un pool specificando gli ID dispositivo stabili, ad esempio:
1 zpool create $mirror_pool_name mirror ata-KINGSTON_SA400S37960G_50026B73818333D1 ata-KINGSTON_SA400S37960G_50026B73818333DB
Crea un file system crittografato:
1 zfs create \
2 -o encryption=on \ # rimuovere se non necessario
3 -o keyformat=passphrase -o casesensitivity=mixed \
4 -o acltype=posixacl -o xattr=sa -o dnodesize=auto $mirror_pool_name/$dataset_name
Scenari di utilizzo reale e prestazioni
ZimaBoard non ha problemi a eseguire ZFS e offre ampie prestazioni, con solo la crittografia che incide in modo evidente sull’uso della CPU. Anche la transcodifica e lo streaming (ad esempio con Jellyfin) non sono un problema. Vale la pena notare che leggere o scrivere file molto grandi su un file system crittografato impegna molto la CPU. Questo potrebbe influire su altri carichi di lavoro in esecuzione sul sistema.
SMB/NFS
Durante i test generali, scrivere un singolo file da 12GB sul pool mirror ZFS ha richiesto circa 5 minuti, con l’IO del disco come collo di bottiglia. La lettura dal pool ZFS è stata molto più veloce, impiegando meno della metà del tempo. In pratica, la connessione di rete da 1Gbps è stata completamente saturata. Entrambi i test sono stati effettuati su un file system non crittografato:

Il test successivo mostra l’impatto significativo che la crittografia ha sulla CPU. Lo stesso file da 12GB è stato letto dal file system ZFS non crittografato e scritto su uno crittografato. Le prestazioni sono ancora eccellenti, ma l’uso della CPU è aumentato notevolmente e si è mantenuto molto alto per tutta la durata del processo.

Risorse e riferimenti
- Installazione di ZFS su Debian: https://wiki.debian.org/ZFS#Installation
- https://www.printables.com/model/224057-zimaboard-dual-hdd-stand
- Cavo SATA a Y: https://shop.zimaboard.com/products/sata-y-cable-for-zimaboard-2-5-inch-hdd-3-5-inch-hdd-raid-free-nas-unraid
Conclusione
Hai domande o cerchi ulteriori chiarimenti su qualche aspetto del tutorial? Tyrehl è qui per aiutarti! Unisciti alla nostra community Discord per connetterti direttamente con Tyrehl e partecipare a discussioni approfondite. La tua curiosità non deve fermarsi al tutorial – Tyrehl è pronto ad assisterti nel tuo percorso con ZFS. Unisciti al nostro server Discord: [ zimaboard.com/discord]
Centro Campagna Zima
Altro da leggere

Cosa Succede Quando Due Agenti AI Si Scontrano per un Solo Server?
L’esperimento di cybersecurity AI di Zero Noichi ha utilizzato due dispositivi ZimaBoard 2 per simulare agenti attaccanti e difensori, dimostrando come i server homelab...

Intelligenza Artificiale Locale su ZimaCube 2 — Espansione PCIe, Ollama e Come Preparare il Tuo Homelab per il Futuro
ZimaCube 2 è dotato di 4 slot NVMe, uno slot di espansione PCIe e RAM DDR5 — pronto per Ollama, pipeline RAG e Docker...

Guida al Monitoraggio del Home Lab ZimaCube: Da Uptime Kuma agli Agenti AI
Monitora il tuo server domestico con Uptime Kuma, Pulse, Proxmox Data Center Manager o un agente AI per tracciare il tempo di attività, i...
