Erfahrungen mit Netzwerk-Dateisystemen (Proxmox VE)

Oliver Treck

New Member
Jan 7, 2016
10
0
1
41
Hallo zusammen.

Ich wollte mal allgemein nachfragen, wie eure Erfahrungen mit Netzwerk- bzw. Cluster-Dateisystemen sind.
Ich habe bisher viel mit GlusterFS experimentiert, welches ich aufgrund der einfachen Einrichtung bevorzuge.
Bis jetzt war ich mit den Ergebnissen immer sehr zufrieden, allerdings wollte ich dieses jüngst für eine geteilte Hosting-Umgebung einsetzen und habe festgestellt, dass die Read-Performance bei massenhaften Stat-Zugriffen, so wie PHP sie beispielsweise macht, extrem schlecht ist.

Wenn ich den Befehl "time find . -name "*.php" | wc -l" in einem etwas größeren WordPress-Projekt starte erhalte ich auf einem ext4-Mount folgende Werte:
3538

real 0m0.016s
user 0m0.008s
sys 0m0.004s

während auf dem GlusterFS-Mount der erste Aufruf ganze 23 Sekunden braucht:
3538

real 0m23.547s
user 0m0.048s
sys 0m0.088s

und danach immer noch etwas über 5 Sekunden:
3538

real 0m5.506s
user 0m0.048s
sys 0m0.084s

Demensprechend schlecht ist auch die Performance der Webseite (durchschnittlich 2-3 sek.), was in einer auf Geschwindigkeit orientierten Internet-Umgebung natürlich ein Killer ist.

Ich habe sämtliche Tipps zur Performance-Optimierung auf GlusterFS schon versucht, aber meistens eher noch schlechtere Ergebnisse erzielt.

Zuletzt habe ich versucht ein gemountetes RAW-Image (Loop-Device) auf dem GlusterFS Storage per NFS auf andere virtuelle Server zu sharen.
Lokal auf dem virtuellen Server mit dem Loop-Device ist die Performance super (trotz GlusterFS):

aber auf den anderen Servern ist auch bei NFS wieder das Problem mit der Read-Performance, wenn auch leicht besser als bei reinem GlusterFS Share:
3538

real 0m2.898s
user 0m0.020s
sys 0m0.064s

ich habe zusätzlich cachefilesd installiert, aber das hat keine nennenswerten Vorteile gebracht.

Ich frage mich, ob es eine Art zusätzliche Cache-Ebene gibt, welche ich vor den Netzwerk-Mount hängen kann, welche auch häufig auftretende Stats-Zugriffe cached. Mit einer Verzögerung von ein paar Minuten (Cachezeit) könnte leben, wenn dafür die Performance steigt.
Alternative wäre die Daten vom Netzwerk-Storage per rsync auf einen lokalen ext4-Mount zu verschieben und von dortaus auszuliefern, aber das nimmt mir die Möglichkeit Daten zurück zu schreiben.

Ich kann aber eigentlich auch nicht wirklich glauben, dass die Performance von vielen kleinen Dateien über einen Netzwerk-Mount so mieserabel sein soll. Vielleicht mache ich ja auch einfach etwas falsch.

Habt ihr ähnliche oder andere Erfahrungen gemacht?

Würde mich über einen Erfahrungsaustausch freuen.

Viele Grüße,
Oliver
 
Das ist momentan auch mein Problem für verteilten HA Storage. Ceph und Gluster schön und gut....skalieren wahnsinnig im Speicherplatz, aber die Performance ist bestenfalls akzeptabel, selbst mit allen Tuning-Maßnahmen (Journal SSD, 10G Netzwerk). Mich stört verschwendeter Plattenplatz nicht, wenn es heiß und live ist, daher denke ich, dass MultiMaster DRBD9 aktuell der beste Kompromiss aus lokaler Leistung und Redundanz ist. Ein Ceph mit lokalem Cache wäre schon schön ;)
 
Meiner eigenen Erfahrung nach ist GFS ungeeignet da es extrem viel Speicher (RAM) braucht und unter großer Last auch gern mal weg bricht - im Replicat Modus. Ceph ist für mich Baustelle, eher experimentell. DRBD ist per Design eh eine Katastrophe und nur zu gebrauchen wenn man es nicht braucht. Notfalls würde ich allenfalls eine uralte Version verwenden.

Am Ende bleibt nur das gute alte NFS. Das tut immer. Wenn ein ordentliches RAID (auch gern redundant) über ordentlich Netzwerk dran hängt (50gb Mellanox), dann kann man richtig Spass haben - vor allem wenn es mal richtig brennt ... Damit kann man dann auch die Performance von lokalen Platten schlagen ...

Ich habe früher mal die (Remote-) Filesystem auf Betriebssystemebene eingestellt (verfrickelt) und dann Proxmox als "lokal" übergeben. Davon bin ich abgekommen. NFS kann man prima via Proxmox handeln und muss sich um nichts kümmern.
 
Achso, fertige Appliance. Hast du da konkrete Beispiele...So richtig was außer sackteuer Netapps finde ich da nicht.

preiswert (?) kannst du mal bei synclogy (36xx) oder bei thecus schauen. bei letzterem habe ich das ha nicht mehr im kopf.
selbst habe ich 3617 mit mellanox karten laufen ... gibt aber sicher noch viel mehr wenn man sucht ...
 
Warum kein Blockstorage verwenden (LVM auf Proxmox VE)? Gibt mittlerweile 2 HE full-HA SAN-Boxen für sowas und die Performance ist echt super. Über 1 GB/s geht prima über 16 GBit FC.
 
Sowas suche ich, hättest du da vielleicht Beispiele für mich (2 HE full-HA SAN)? Synology ist zwar super im NAS Bereich, aber ist eben kein SAN.
 
Warum nicht eine NetApp? Teuer ist immer relativ. Man kauft eine NetApp auch nicht für nur NFS. Eine NetApp kaufe ich wenn ich Funktionen haben will. Da ist vor allem die Sicherung mit Snapshots einfach wesentlich besser als ein herumkopieren bei dem ich Stunden brauchen würde um so etwas zu restoren. Speicherplatz kann man mit den Space Efficiency features auch einiges einsparen. Aber der größte Vorteil ist eben ich habe alle Protokolle zur Verfügung.
Für reinen SAN Betrieb wäre eventuell die NetApp E Series etwas. Wobei mir NetApp E Series und Fujitsu DX sehr ähnlich aussehen.
 
Moin,

was habt ihr lieber:

Netapp oder HP Server mit Diskshelfs als NFS Speicher?

Gruß

Markus
 
Keine der NetApp-Features bringt dir bei Proxmox VE aber etwas, es sei denn du erzeugst pro Maschine ein Volume auf der Netapp. Nur dann kannst du gezielt etwas snapshotten und zurückspielen (Bitte nicht verwechseln mit Backup, das ist nämlich keines!). Netapp wie auch andere SAN-Anbieter haben sehr viele Features und können eine Menge, leider ist das in den meisten Umgebungen völlig einsatzlos, da die Technik, die darauf aufbaut dies nicht unterstützt. iSCSI und NFS solltest du auch nur verwenden, wenn du 10 GBE, sonst hast du da kein Spaß dran. Je nachdem wieviele Knoten du einsetzen möchtest benötigst du bei FC auch keinen Switch, wenn das SAN bereits einen kleinen integriert hat.

Beispiel wäre hier die Features zum Betrieb einer Oracle-Datenbank. Ja, schön wenn man die im SAN clonen kann, aber geht nur bei einer Single-Instanz. Bei einem RAC geht das nicht mehr, und wer Oracle hochverfügbar einsetzen möchte verwendet immer einen RAC.
 
Warum soll eine Netapp bei Proxmox nichts bringen??? Das ist Leistung Pur da alles über vram läuft fast genau so schnell wenn du ssd local Storage einbindest.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!