Vraag ZFS vs XFS


We overwegen een ~ 16TB-opslagserver te bouwen. Op dit moment overwegen we zowel ZFS als XFS als bestandssysteem. Wat zijn de voordelen, nadelen? Waar moeten we naar zoeken? Is er een derde, betere optie?


54
2018-04-30 09:03


oorsprong


Vergelijk ze niet eens. ZFS is een modern enterprise-level bestandssysteem zoals jfs2, wafl. XFS was 10 jaar geleden goed, maar vandaag is het slechts een steentijd fs. - disserman
In sommige opzichten kun je ze niet vergelijken: XFS is een bestandssysteem; ZFS is een bestandssysteem en nog veel meer: ​​het vervangt het bestandssysteem, de volumemanager (zoals LVM) en RAID. JFS wordt echter niet langer onderhouden als het geheugen dient: XFS is echter actief en onderhouden en robuust. Hoe dan ook - ZFS of XFS - je kunt volgens mij niet fout gaan. - Mei
Ik denk nog steeds dat deze vraag relevant is, dus ik schrijf hier onze ervaring: XFS is eenvoudig, u installeert het, u voert het uit, het is snel, het werkt. (HW raid hieronder). ZFS is veilig, heeft compressie, maar heeft veel werk om de tuning zo snel mogelijk te laten werken als XFS. Het hangt dus ook af van de situatie waarin u verwacht dat de server zal worden uitgevoerd. (backend van cluster. gebruikersopslag, archief, ...) - SvennD
Er is ook Hammer2 dragonflybsd.org/hammer - skan


antwoorden:


Ik heb XFS beter geschikt gevonden voor extreem grote bestandssystemen met mogelijk veel grote bestanden. Ik heb nu al meer dan 2 jaar een functionerend 3.6TB XFS-bestandssysteem zonder problemen. Werkt absoluut op die manier beter dan ext3, enz. (Vooral als het om grote bestanden en veel I / O gaat).

Wat u krijgt met ZFS is apparaatpooling, striping en andere geavanceerde functies die in het bestandssysteem zelf zijn ingebouwd. Ik kan niet met specifieke informatie spreken (ik laat anderen reageren), maar van wat ik kan zeggen, zou je Solaris willen gebruiken om hier het meeste voordeel uit te halen. Het is mij ook onduidelijk hoeveel ZFS helpt als je al hardware RAID gebruikt (zoals ik ben).


41
2018-04-30 11:49



De belangrijkste functie van ZFS die u (meestal) niet elders vindt, is CRC op blokniveau, wat verondersteld wordt om stille gegevenscorruptie te detecteren (en hopelijk te voorkomen). De meeste bestandssystemen gaan ervan uit dat als een schrijf succesvol is voltooid, de gegevens inderdaad naar de schijf zijn geschreven. Dat is niet altijd het geval, vooral als een sector "marginaal" begint te worden. ZFS detecteert dit door de CRC te controleren tegen de resulterende schrijfactie. - Avery Payne
En ja, ik vind XFS erg leuk. :) De enige diecha waar je rekening mee moet houden, is de neiging om sectoren uit te schakelen die 'slecht' waren tijdens een herstel van een tijdschrift. In sommige (zeldzame) gevallen kan er enig gegevensverlies optreden ... Dit artikel is gevonden met de Google-zoekterm "xfs nullen uit sectoren na herstel" pages.cs.wisc.edu/~vshree/xfs.pdf - Avery Payne
Een van de dingen die ik leuk vind bij XFS is het xfs_fsr programma "defragmentatie". - Cristian Ciupitu
Het nut van ZFS block-level CRC's is twijfelachtig. Vaste schijven en SSD's gebruiken Hamming-code ECC om enkelbit-fouten te corrigeren en om fouten met twee bits te rapporteren. Als de ECC de fysieke leesfout niet op transparante wijze kan corrigeren, gaan de gegevens toch verloren en wordt er een leesfout gerapporteerd aan het besturingssysteem. CRC's corrigeren fouten niet. Deze functie wordt als een groot voordeel van ZFS gepusht, maar de waarheid is dat het overbodig is en geen waarde heeft. Wat betreft de zero-after-power-fail-fout van XFS, die is lang geleden gecorrigeerd en is vandaag niet relevant. - Jody Lee Bruchon


ZFS biedt u voordelen die verder gaan dan software-RAID. De commandostructuur is zeer doordacht en intuïtief. Het heeft ook compressie, snapshots, klonen, bestandssysteem verzenden / ontvangen en cacheapparaten (die mooie nieuwe SSD-schijven) om het indexeren van metagegevens te versnellen.

compressie:

#zfs set compression=on filesystem/home

Het ondersteunt eenvoudig om copy-on-write snapshots te maken die live kunnen worden gemonteerd:

# zfs snapshot filesystem/home/user@tuesday
# cd filesystem/home/user/.zfs/snapshot/tuesday

Bestandsysteem klonen:

# zfs clone filesystem/home/user@tuesday filesystem/home/user2

Bestandssysteem verzenden / ontvangen:

# zfs send filesystem/home/user@tuesday | ssh otherserver "zfs receive -v filesystem/home/user"

Incrementeel verzenden / ontvangen:

# zfs send -i filesystem/home/user@tuesday | ssh otherserver "zfs receive -v filesystem/home/user"

Caching-apparaten:

# zpool add filesystem cache ssddev

Dit is allemaal slechts het topje van de ijsberg, ik zou het ten zeerste aanbevelen om een ​​installatie van Open Solaris te bemachtigen en dit uit te proberen.

http://www.opensolaris.org/os/TryOpenSolaris/

Bewerk: Dit is erg oud, Open Solaris is gestopt, de beste manier om ZFS te gebruiken is waarschijnlijk ingeschakeld Linuxof FreeBSD.


Volledige openbaarmaking: ik was vroeger een Sun-opslagarchitect, maar ik heb niet meer dan een jaar voor hen gewerkt, ik ben gewoon enthousiast over dit product.


73
2018-05-05 21:09



Die link werkte niet voor mij met www. Gebruik http://opensolaris.org/os/TryOpenSolaris/ - aggregate1166877
Ik zou eigenlijk zeggen dat de beste gok voor zfs nog altijd FreeBSD is. Het is al een aantal jaren onderdeel van het systeem. Dus mijn gok is, er is de minste kans op vervelende verrassingen. Hoewel het gewoon mijn $ 0,02 is. - Fox


het gebruik van lvm snapshots en xf's op live bestandssystemen is een recept voor rampen vooral bij gebruik van zeer grote bestandssystemen.

Ik rijd de afgelopen 6 jaar exclusief op LVM2 en xfs op mijn servers (thuis zelfs sinds zfs-fuse gewoon te traag is) ...

Ik kan echter niet langer de verschillende faalmodi tellen die ik tegenkwam bij het gebruik van snapshots. Ik gebruik ze helemaal niet meer - het is gewoon te gevaarlijk.

De enige uitzondering die ik nu maak is mijn eigen persoonlijke mailserver / webserver-back-up, waar ik 's nachts back-ups zal maken met behulp van een efemere snapshot, die altijd even groot is als de bron fs, en wordt direct daarna verwijderd.

Belangrijkste aspecten om in gedachten te houden:

  1. als je een groot (ish) bestandssysteem hebt met een snapshot, zijn de schrijfprestaties vreselijk verslechterd
  2. als je een groot (ish) bestandssysteem hebt dat een snapshot heeft, zal de opstarttijd met letterlijk tientallen minuten worden vertraagd, terwijl de schijf zal kolken en karnen tijdens het importeren van de volumegroep. Er worden geen berichten weergegeven. Dit effect is vooral akelig als de root op lvm2 is (omdat wachten op het rootapparaat zal worden onderbroken en het systeem niet zal opstarten)
  3. als je een foto hebt, is het heel gemakkelijk om te weinig ruimte te hebben. Zodra de ruimte op is, is de momentopname corrupt en kan deze niet worden gerepareerd.
  4. Snapshots kunnen op dit moment niet worden samengevouwen / samengevoegd (zie http://kerneltrap.org/Linux/LVM_Snapshot_Merging). Dit betekent dat de enige manier om gegevens uit een snapshot te herstellen, is om het (rsync?) Te kopiëren. GEVAAR GEVAAR: dat is het wel niet wil dit doen als de capaciteit van de momentopname niet ten minste de grootte van de bron fs is; Als je dat niet doet, zul je snel de stenen muur raken en eindigen met zowel de bron fs als de momentopname beschadigd. (Ik ben daar geweest!)

18
2017-10-08 23:14



Toevallig heeft iemand vandaag bevestigd dat de vg met snapshot - unable-to-boot-linux nog steeds actueel is: bugs.launchpad.net/lvm2/+bug/360237 - sehe
Bij het opnieuw bekijken van deze fout, denken ze nog steeds dat de bodemloze opstartproblemen met snaphots "normaal gedrag voor lvm" zijn: bugs.launchpad.net/lvm2/+bug/360237/comments/7 (op 2012-01-07) - sehe
Update: dezelfde staat. Alleen nu is het nog 7 jaar langer. - sehe


Een paar extra dingen om over na te denken.

  • Als een schijf in een hardwarematige RAID-array sterft, ongeacht het bestandssysteem dat erbovenop zit, moeten alle blokken op het apparaat opnieuw worden opgebouwd. Zelfs degenen die geen gegevens hadden. ZFS aan de andere kant is de volumemanager, het bestandssysteem en beheert gegevensredundantie en striping. Dus het kan op intelligente wijze alleen de blokken reconstrueren die gegevens bevatten. Dit resulteert in snellere rebuild-tijden dan wanneer het volume voor 100% vol is.

  • ZFS heeft achtergrondschrobben, waardoor uw gegevens consistent blijven op de schijf en eventuele problemen worden hersteld voordat het gegevensverlies tot gevolg heeft.

  • ZFS-bestandssystemen bevinden zich altijd in een consistente staat, dus er is geen fsck nodig.

  • ZFS biedt ook meer flexibiliteit en functies met zijn snapshots en klonen in vergelijking met de snapshots aangeboden door LVM.

Grote opslagpools hebben uitgevoerd voor grootformaat videoproductie op een Linux-, LVM-, XFS-stack. Mijn ervaring was dat het gemakkelijk is om deel te nemen aan het microbeheer van je opslag. Dit kan resulteren in grote hoeveelheden ongebruikte toegewezen ruimte en tijd / problemen bij het beheer van uw logische volumes. Dit is misschien geen probleem als u een fulltime opslagbeheerder hebt die de taak heeft om de opslag micro-beheer. Maar ik heb gemerkt dat de poolopslagaanpak van ZFS deze beheerproblemen verwijdert.


13
2017-07-14 18:21





ZFS is absoluut geweldig. Ik gebruik het als mijn thuisbestandsserver voor een 5 x 1 TB HD-bestandsserver en gebruik het ook in productie met bijna 32 TB aan ruimte op de harde schijf. Het is snel, gemakkelijk te gebruiken en bevat enkele van de beste bescherming tegen gegevensbeschadiging.

We gebruiken OpenSolaris met name op deze server omdat we toegang wilden hebben tot nieuwere functies en omdat het het nieuwe pakketbeheersysteem en de manier van upgraden bood.


8
2018-05-06 00:07





Welk besturingssysteem ben je van plan om te draaien? Of is dat een ander deel van de overweging? Als je Solaris gebruikt, is XFS voor zover ik weet zelfs geen optie. Als u Solaris niet gebruikt, hoe bent u dan van plan om ZFS te gebruiken? Ondersteuning is beperkt op andere platforms.

Als je het hebt over een Linux-server, zou ik persoonlijk bij Ext3 blijven, al was het alleen maar omdat het de meeste hoeveelheid tests ontvangt. zfs-fuse is nog erg jong. Ook had ik een keer problemen met XFS, toen een bug gegevensbeschadiging veroorzaakte na een kernel-update. De voordelen van XFS ten opzichte van Ext3 wegen absoluut niet op tegen de kosten van het herstellen van de machine, die zich in een extern datacenter bevond.


7
2018-04-30 11:45



FreeBSD heeft een volwassen native port van ZFS - Brian Gianforcaro
wiki.freebsd.org/ZFSKnownProblems Ik denk dat je definitie van volwassen anders kan zijn dan die van mij :-) Misschien zou ik erover nadenken nadat 8.0 is uitgebracht. - Kjetil Limkjær
ext3 met 16TB? Nee nee nee. Doe het niet. Je zal huilen. ZFS of XFS zijn de beste bestandssystemen die er zijn naar mijn mening. Gebruik ZFS als dat mogelijk is (voer het niet uit onder Linux). Ik zeg dit met veel ervaring op grote volumes op Linux en Solaris gedurende 5 jaar. - Thomas
FreeBSD 7.2 na 20090601 heeft de meeste ZFSKnownProblems gemotiveerd. Als u de AMD64-versie van het besturingssysteem gebruikt, is deze nu stabiel. In 8.0 heeft FreeBSD ZFS gemarkeerd als stabiel genoeg voor productie. - Walter
ZFS op Linux is nu beschikbaar (zfsonlinux.org) - James Moore


Ik denk niet dat je je op prestaties moet concentreren. Zijn uw gegevens veilig met XFS, ext4, enz.? Nee. Lees deze doctoraatsthesis en onderzoeksrapporten:

XFS is niet veilig tegen gegevensbeschadiging: pages.cs.wisc.edu/~vshree/xfs.pdf

En geen van beide is ext3, JFS, ReiserFS, enz .: zdnet.com/blog/storage/how-microsoft-puts-your-data-at-risk/169?p=169&tag=mantle_skin%3bcontent "Ik kwam het fascinerende proefschrift van Vijayan Prabhakaran tegen, IRON File Systems, dat analyseert hoe vijf standaard journaling bestandssystemen - NTFS, ext3, ReiserFS, JFS en XFS - omgaan met opslagproblemen.

In een notendop vond hij dat alle bestandssystemen dat wel hebben

. . . failure policies that are often inconsistent, sometimes buggy, and generally inadequate in their ability to recover from partial disk failures. "

Maar ZFS beschermt uw gegevens met succes. Hier is een onderzoeksartikel over dit: zdnet.com/blog/storage/zfs-data-integrity-tested/811


6
2018-05-16 12:34





Geen FS-georiënteerd antwoord sorry, maar houd er rekening mee dat een aantal schijfcontrollers niet zal omgaan met> 2TB LUNS / logische schijven - dit kan de manier waarop je je opslag organiseert behoorlijk beperken. Ik wilde alleen dat je op de hoogte was, zodat je je systeem van begin tot eind kunt controleren om ervoor te zorgen dat het overal met 16TB zal omgaan.


5
2018-06-16 12:52





Het hangt ervan af welke functies je wilt ..., de twee redelijke keuzes zijn xfs en zfs, zoals je al zei, de xfs-code is behoorlijk goed getest. Ik heb hem voor het eerst 8 jaar geleden onder IRIX gebruikt

Het is mogelijk om snapshots van xfs te krijgen (met lvm en xfs_freeze)

Het is mogelijk om een ​​apart logboekapparaat te hebben, bijvoorbeeld SSD

mkfs.xfs -l logdev=/dev/sdb1,size=10000b /dev/sda1

Grote xf's hebben traditioneel veel geheugen nodig om te controleren

Het probleem met het verschijnen van nullen was een "beveiligings" -functie, waarvan ik denk dat die een tijd geleden is verdwenen.


1
2017-07-14 16:48





Afgezien van wat al genoemd is, presteren xfs op MD base raid vanuit het oogpunt van prestaties beter dan zfs op streaming media. Ik heb exact dezelfde hardware gebruikt voor een half decennium met xf's en ongeveer dezelfde hoeveelheid tijd met zfs op mijn mediaserver. Op de Intel Atom 330 met xfs ervaar ik nooit stuter, op zfs op complexe scènes kan dezelfde hardware het niet bijbenen en kaders laten vallen.


1
2017-12-10 20:37





In plaats van je eigen te bouwen, is een alternatief voor de Sun 7410 oftewel Toro. Het heeft een aantal zeer nuttige software die meegeleverd wordt met de oplossing.


0
2018-05-01 06:03