Stiamo valutando la costruzione di un server di archiviazione di ~ 16 TB. Al momento, stiamo considerando sia ZFS che XFS come filesystem. Quali sono i vantaggi, gli svantaggi? Cosa dobbiamo cercare? C'è una terza opzione migliore?
Stiamo valutando la costruzione di un server di archiviazione di ~ 16 TB. Al momento, stiamo considerando sia ZFS che XFS come filesystem. Quali sono i vantaggi, gli svantaggi? Cosa dobbiamo cercare? C'è una terza opzione migliore?
Risposte:
Ho trovato XFS più adatto a filesystem estremamente grandi con forse molti file di grandi dimensioni. Ho un filesystem XFS da 3,6 TB funzionante da oltre 2 anni senza problemi. Funziona decisamente meglio di ext3, ecc. A quella dimensione (specialmente quando si ha a che fare con molti file di grandi dimensioni e molti I / O).
Quello che ottieni con ZFS è il pool di dispositivi, lo striping e altre funzionalità avanzate integrate nel filesystem stesso. Non posso parlare con dettagli specifici (lascerò che gli altri commentino), ma da quello che posso dire, vorresti usare Solaris per ottenere il massimo beneficio qui. Non è anche chiaro per me quanto ZFS aiuti se stai già utilizzando l'hardware RAID (come lo sono io).
xfs_fsr
programma di "deframmentazione".
ZFS offre vantaggi oltre al software RAID. La struttura dei comandi è strutturata in modo molto ponderato e intuitiva. Ha anche dispositivi di compressione, istantanee, clonazione, invio / ricezione del filesystem e cache (quei fantasiosi nuovi dischi SSD) per accelerare i metadati di indicizzazione.
Compressione:
#zfs set compression=on filesystem/home
Supporta semplici istantanee copia-su-scrittura che possono essere montate dal vivo:
# zfs snapshot filesystem/home/user@tuesday
# cd filesystem/home/user/.zfs/snapshot/tuesday
Clonazione del filesystem:
# zfs clone filesystem/home/user@tuesday filesystem/home/user2
Invio / ricezione del filesystem:
# zfs send filesystem/home/user@tuesday | ssh otherserver "zfs receive -v filesystem/home/user"
Invio / ricezione incrementale:
# zfs send -i filesystem/home/user@tuesday | ssh otherserver "zfs receive -v filesystem/home/user"
Dispositivi di memorizzazione nella cache:
# zpool add filesystem cache ssddev
Questa è solo la punta dell'iceberg, consiglio vivamente di mettere le mani su un'installazione di Open Solaris e provarlo.
http://www.opensolaris.org/os/TryOpenSolaris/
Modifica : Questo è molto vecchio, Open Solaris è stato sospeso, il modo migliore per usare ZFS è probabilmente su Linux o FreeBSD .
Divulgazione completa: ero un architetto dello storage Sun, ma non ho lavorato per loro da oltre un anno, sono solo entusiasta di questo prodotto.
http://opensolaris.org/os/TryOpenSolaris/
l'uso di lvm snapshot e xfs su filesystem live è una ricetta per il disastro soprattutto quando si usano filesystem molto grandi.
Ho eseguito esclusivamente su LVM2 e xfs negli ultimi 6 anni sui miei server (a casa anche dal momento che zfs-fuse è semplicemente troppo lento) ...
Tuttavia, non posso più contare le diverse modalità di errore che ho riscontrato durante l'utilizzo delle istantanee. Ho smesso di usarli del tutto - è semplicemente troppo pericoloso.
L'unica eccezione che farò ora è il mio backup mailserver / webserver personale, dove eseguirò backup notturni usando uno snapshot effimero, che è sempre uguale alla dimensione del file sorgente fs e viene cancellato subito dopo.
Aspetti più importanti da tenere a mente:
Un paio di cose in più a cui pensare.
Se un'unità muore in un array RAID hardware indipendentemente dal filesystem che si trova sopra di esso, tutti i blocchi sul dispositivo devono essere ricostruiti. Anche quelli che non contenevano alcun dato. ZFS invece è il gestore del volume, il filesystem e gestisce la ridondanza e lo striping dei dati. Quindi può ricostruire in modo intelligente solo i blocchi che contenevano dati. Ciò si traduce in tempi di ricostruzione più rapidi rispetto a quando il volume è pieno al 100%.
ZFS ha una pulizia di fondo che assicura che i dati rimangano coerenti sul disco e ripari tutti i problemi rilevati prima che si traduca in una perdita di dati.
I file system ZFS sono sempre in uno stato coerente, quindi non è necessario fsck.
ZFS offre anche maggiore flessibilità e funzionalità con le sue istantanee e cloni rispetto alle istantanee offerte da LVM.
Avere eseguito grandi pool di archiviazione per la produzione di video di grande formato su uno stack Linux, LVM, XFS. La mia esperienza è stata che è facile cadere nella micro-gestione della memoria. Ciò può comportare grandi quantità di spazio allocato inutilizzato e tempo / problemi con la gestione dei volumi logici. Questo potrebbe non essere un grosso problema se si dispone di un amministratore di archiviazione a tempo pieno che ha il compito di micro-gestire l'archiviazione. Ma ho scoperto che l'approccio di archiviazione del pool di ZFS elimina questi problemi di gestione.
ZFS è assolutamente sorprendente. Lo sto usando come il mio file server di casa per un file server HD da 5 x 1 TB e lo sto usando anche in produzione con quasi 32 TB di spazio sul disco rigido. È veloce, facile da usare e contiene alcune delle migliori protezioni contro la corruzione dei dati.
Stiamo utilizzando OpenSolaris su questo server in particolare perché volevamo avere accesso a funzionalità più recenti e perché forniva il nuovo sistema di gestione dei pacchetti e le modalità di aggiornamento.
Quale sistema operativo stai pianificando di eseguire? O è un'altra parte della considerazione? Se usi Solaris, XFS non è nemmeno un'opzione per quanto ne so. Se non si esegue Solaris, come si prevede di utilizzare ZFS? Il supporto è limitato su altre piattaforme.
Se stai parlando di un server Linux, rimarrei personalmente con Ext3, anche solo perché riceve il maggior numero di test. zfs-fuse è ancora molto giovane. Inoltre, ho avuto problemi con XFS una volta, quando un bug ha causato il danneggiamento dei dati dopo un aggiornamento del kernel. I vantaggi di XFS su Ext3 non hanno sicuramente superato i costi associati al ripristino della macchina, che si trovava in un datacenter remoto.
Non credo che dovresti concentrarti sulle prestazioni. I tuoi dati sono al sicuro con XFS, ext4, ecc? No. Leggi queste tesi di dottorato e documenti di ricerca:
XFS non è sicuro contro la corruzione dei dati: pages.cs.wisc.edu/~vshree/xfs.pdf
E neanche ext3, JFS, ReiserFS, ecc.: Zdnet.com/blog/storage/how-microsoft-puts-your-data-at-risk/169?p=169&tag=mantle_skin%3bcontent "Mi sono imbattuto nell'affascinante tesi di dottorato di Vijayan Prabhakaran, IRON File Systems che analizza il modo in cui cinque file system di journaling delle materie prime - NTFS, ext3, ReiserFS, JFS e XFS - gestiscono i problemi di archiviazione.
In breve, ha scoperto che tutti i file system hanno
. . . failure policies that are often inconsistent, sometimes buggy, and generally inadequate in their ability to recover from partial disk failures. "
Ma ZFS protegge con successo i tuoi dati. Ecco un documento di ricerca su questo: zdnet.com/blog/storage/zfs-data-integrity-tested/811
Non è una risposta orientata a FS, mi dispiace, ma tieni presente che un certo numero di controller del disco non gestirà LUNS / dischi logici da 2 TB: questo può limitare il modo in cui organizzi il tuo spazio di archiviazione. Volevo solo che tu fossi consapevole in modo da poter controllare il tuo sistema end-to-end per assicurarti che gestirà 16 TB in tutto.
Dipende dalle funzionalità che vuoi ..., le due scelte ragionevoli sono xfs e zfs come hai detto, il codice xfs è abbastanza ben testato L'ho usato per la prima volta 8 anni fa sotto IRIX
È possibile ottenere istantanee da xfs (usando lvm e xfs_freeze)
È possibile avere un dispositivo di registro separato, ad esempio SSD
mkfs.xfs -l logdev=/dev/sdb1,size=10000b /dev/sda1
I grandi xfs hanno tradizionalmente bisogno di molta memoria per controllare
Il problema con la comparsa degli zeri era una funzione di "sicurezza", che credo sia scomparsa qualche tempo fa.
A parte ciò che è già stato menzionato, dal punto di vista delle prestazioni xfs su raid di base MD ha prestazioni migliori di zfs su streaming media. Ho usato lo stesso hardware esatto per mezzo decennio con xfs e circa la stessa quantità di tempo con zfs sul mio media server. Sull'Intel Atom 330 con xfs non ho mai avuto problemi, su zfs su scene complesse lo stesso hardware non riesce a tenere il passo e inizia a far cadere i frame.
Bene ragazzi, non dimentichiamoci dell'ultima aggiunta a zfs: la deduplicazione. E parliamo al volo della condivisione iscsi, nfs o smb. Come altri hanno già detto, esportazioni di file system zfs, snapshot, raidz (= raid5) bloccano checksum, larghezza di banda dinamica, gestione della cache e molti altri. Io voto per zfs.