Al een tijdje maak ik binnen het bedrijf waar ik werk gebruik van NFS, eigenlijk al onze diensten draaien er op en het werkt prima, maar toch kent NFS (v3) zijn beperkingen, dus werd het toch eens tijd om te gaan kijken naar iets anders dan NFS.
Nu zijn de cluster filesystems steeds meer aan het opkomen en daarom heb ik mijn blik eens geworpen op OCFS2 een clustered filesystem.
Nu weet ik, NFS en OCFS2 zijn fundamenteel heel anders, maar uiteindelijk serveren ze het zelfde doen (in mijn geval), bestanden vanaf één centraal punt R/W beschikbaar maken op meerdere servers.
Het probleem met NFS is onder andere:
* Cache synchronisatie
* Locking
* Hangups
Nu zal ik de hangups eens wat verder verklaren, maar eigenlijk kent iedereen die NFS gebruikt ze wel:
Hier maak ik voor de performance gebruik van NFS over UDP, nu kan je deze meldingen onderdrukken door je timeout waarde simpelweg te verhogen, echter lost dat de hangup niet op! Het maskeert de melding alleen.
Alle FAQ's zeggen: Controleer je NIC, je netwerk, etc, etc. Maar het blijft gebeuren, dit zit gewoon fundamenteel in NFS v3.
Maar genoeg over NFS, dat was eigenlijk alleen de inleiding, ik ben gaan kijken naar OCFS2 en heb hier wat benchmarks op los gelaten ten opzichte van NFS. Hier heb ik geprobeerd de omstandigheden zo eerlijk mogelijk te houde, al is dat niet volledig mogelijk omdat ze van elkaar verschillen.
Zie daarom mijn benchmarks (PDF). Hierbij moet ik wel zeggen, dit document is geschreven om intern binnen het bedrijf te verspreiden, daarom de korte context.
Mijn vraag aan jullie is, wat is jullie ervaring met OCFS2 of andere clustered filesystems en wat kunnen jullie aanraden? Maak ik verder fundamentele fouten door OCFS2 en NFS zo tegen elkaar te vergelijken?
Wat wellicht nog interessant is om te weten:
* We hosten websites en mailboxes, dat betekend VEEL kleine files
* De totale data omvang (overspreid over 12 storage bakken) is ruim 2.5TB
Nu zijn de cluster filesystems steeds meer aan het opkomen en daarom heb ik mijn blik eens geworpen op OCFS2 een clustered filesystem.
Nu weet ik, NFS en OCFS2 zijn fundamenteel heel anders, maar uiteindelijk serveren ze het zelfde doen (in mijn geval), bestanden vanaf één centraal punt R/W beschikbaar maken op meerdere servers.
Het probleem met NFS is onder andere:
* Cache synchronisatie
* Locking
* Hangups
Nu zal ik de hangups eens wat verder verklaren, maar eigenlijk kent iedereen die NFS gebruikt ze wel:
code:
1
2
3
| [3362745.908558] nfs: server XXX not responding, still trying [3362753.895108] nfs: server XXX not responding, still trying [3362753.896417] nfs: server XXX OK |
Hier maak ik voor de performance gebruik van NFS over UDP, nu kan je deze meldingen onderdrukken door je timeout waarde simpelweg te verhogen, echter lost dat de hangup niet op! Het maskeert de melding alleen.
Alle FAQ's zeggen: Controleer je NIC, je netwerk, etc, etc. Maar het blijft gebeuren, dit zit gewoon fundamenteel in NFS v3.
Maar genoeg over NFS, dat was eigenlijk alleen de inleiding, ik ben gaan kijken naar OCFS2 en heb hier wat benchmarks op los gelaten ten opzichte van NFS. Hier heb ik geprobeerd de omstandigheden zo eerlijk mogelijk te houde, al is dat niet volledig mogelijk omdat ze van elkaar verschillen.
Zie daarom mijn benchmarks (PDF). Hierbij moet ik wel zeggen, dit document is geschreven om intern binnen het bedrijf te verspreiden, daarom de korte context.
Mijn vraag aan jullie is, wat is jullie ervaring met OCFS2 of andere clustered filesystems en wat kunnen jullie aanraden? Maak ik verder fundamentele fouten door OCFS2 en NFS zo tegen elkaar te vergelijken?
Wat wellicht nog interessant is om te weten:
* We hosten websites en mailboxes, dat betekend VEEL kleine files
* De totale data omvang (overspreid over 12 storage bakken) is ruim 2.5TB