Beratungshilfe Filer für Virtualisierungsumgebung (HA)

p4n0

Legende
Thread Starter
Mitglied seit
07.08.2012
Beiträge
4.296
Ort
Raum Stuttgart
Hi Leute,

ich beschaeftige mich aktuell mit der Planung einer sinnvollen Storage fuer eine Virtualisierungsumgebung.

Und irgendwie dreh ich mich im kreis...
Problemfaktor:
- Es muss bezahlbar sein. Sprich: Software mit 50k Lizenzgebuehren fallen direkt raus.

Anforderungen:

- Skalierbarkeit
- Moeglichkeit ein HA Storage Cluster zu bauen
- 2 x 10G für redundante Anbindung
- ISCSI / NFS
- ZFS
- ~20TB Nutzdaten


Die Hardware ist in dem Punkt gar nicht das Problem.
Habt ihr Vorschläge zur einzusetzenden Software / OS?

Danke schonmal für eure Denkanstöße :)
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Privat oder Kommerziell?

Denn für ersteres kann ich nichts sagen, da du anscheinend, wenn du hier nach dem OS fragst, was selbst bauen magst.
Bei zweiterem würde ich ein entsprechendes SAN kaufen und die Hardware so skalieren das es passt, das OS ist dann eh mit inbegriffen.

Dell hat ganz interessante Modelle, dort würde ich mal nachschauen.
Bei 20 TB aber auch 10Gbit Anbindung hört sich das stark danach an das es sich evtl. lohnen würde zwei Systeme zu haben.
Eines für Hot Data mit hohen I/O Leistung und ein Cold Data Storage wobei es sich eher um die P/L pro GB dreht.

Angaben zu den Anwendungen wären ggfls. hier ganz sinnvoll.
 
Ich nehme mal an, es ist kein Home Setup

ZFS Storage ist für mich vom OS dann erstmal Solaris/ OmniOS (da kommt ZFS und NFS her und die Integration von OS, ZFS, SMB, NFS, iSCSI ist immer noch am Besten), dann BSD dann ZoL. Oracle Solaris ist kommerziell und kostet mit Support ca 1000 Euro/Jahr. OmniOS ist ein freier Fork von Solaris. Das darf man frei nutzen, man kann aber Support dazu kaufen.

Bei HA kommt es darauf an, ob man Hot-Service/Storage Failover/active-active innerhalb von ein paar Sekunden braucht, dann sowas wie HA Plugin for ZFS Open Storage Appliance Dazu sollte man aber schon eine gute IT Abteilung haben.

Wenn ein aktives System und ein Backupsystem mit ZFS Replikation und ein paar Minuten Versatz reicht, ist das recht banal. Im Crashfall muss man dann halt manuell beim Backupsystem die Shares aktivieren und die VMs importieren.

Von der Hardware würde ich ganz klar auf SuperMicro setzen.
Sowas wie eine Referenz für ZFS High Performance Storage wäre sowas
Supermicro | Products | SuperServers | 2U | 2028R-ACR24L

Dazu idealerweise Intel SSDs für High Performance, alternative wenn günstiger sein soll, gleicher Aufbau (passive Backplane) aber in 3,5" und mit Mirrors. Bei normalen Platten eine schnelle SSD oder NVMe als Slog device. Eine CPU täts auch.
 
@p4n0
Also rein den den Daten, die du lieferst kann man absolut keine Empfehlung aussprechen geschweige denn eine Richtung.
Mal das HA außen vor, um 20TB mit ZFS bereit zu stellen "reicht" dir imho ne kleine Xeon E3 Kiste mit 4x8TB Platten, bisschen RAM und den 2x10G Interfaces... Für ne Virtualisierungsumgebung, wo es, so meine Erfahrung, aber nicht unbedingt darum geht, die dicksten VMs mit xxTB pro VM zu betreiben, sondern wo es eher darum geht, viele VMs mit ihren "Basis" 20-100GB zu stemmen, kommt bei 20TB ne recht große Menge bei rum.
-> unsere NetApp Storage Cluster auf der Arbeit haben zusammen gerade mal etwas über 20TB nutzbar und stemmen über 300VMs. Da sprechen wir aber auch weit über 100HDDs (SAS/FC mit 10/15k).
Spinn den Faden weiter -> 20TB könnten auch größer 50x 400GB SSDs inkl. Hotspares und entsprechend Reserve für die Raidlevel sein, wenn es um massivste IO Last geht!

Wenn du nicht 50k in Lizenzen ausgeben willst, so wirst du aber bestimmt faktisch recht hohe Beträge in die Hardware/die Platten investieren müssen, vor allen bei der Virtualisierung, wo Storagespeed direkt dicht gefolgt von der RAM Menge quasi das wichtigste ist, was man beachten MUSS -> und das erste ist, was man idR. verkackt bei der Planung :fresse:

Kurzum, ohne Infos, was da passieren soll, kann man wenig bis nichts empfehlen... Ins Blaue bringt normal auch keinen direkt weiter. Aber mal ein Versuch fürs "Blaue".
-> wenn du auf ZFS verzichten kannst. Ich verbaute jüngst ein Single Shelf, DualController Cluster System NetApp FAS 2554. Da stecken 2x9x2TB 7,2k SAS Platten drin (+ 2x HotSpare) + 4x 400GB SAS SSDs als Cache davor. Im Clusterbetrieb ist das Ding auf 9x2TB pro Controller im RaidDP eingedreht. Der Cache mit den vier 400GB SSDs klemmt bei beiden Aggregates "davor". Das Teil stemmt aktuell gut 20 VMs... Alles Windows Datacenter 2012 R2. Bisschen DC, bisschen SQL, bisschen Terminalserver, bisschen Kleinkram. -> läuft sehr anständig muss ich sagen. Sequenzielle Datenrate bringt ca. 7-8GBit/sec lesen wie schreiben durchgängig pro Controller -> sprich bei Verteilung über beide Controller entsprechend fast doppelt so viel. Random Access geht durch die SSDs auch entsprechend fix mit mehreren 1000 IO/sec.
Kostenpunkt wenn ich das recht in Erinnerung habe -> ca. 16k inkl. Lizenzen (Base License, Cluster License, NFS/iSCSI/SMB)

Das Ding wird bei massiver IO Last aber recht schnell wegbrechen, vor allem, wenn du mehr Last erzeugst, als die Cache SSDs wegstecken können... Die billigen 7,2k Platten knicken bei Random Last extrem ein. Größer geht bei den Dingern allerdings IMMER ;) Alles eine Geldfrage...
Wenn es rein um ZFS geht, würde ich mir an deiner Stelle mal externe Hilfe ins Haus holen... Dir nutzt ne Bastelkiste nix, wenn da irgendwas "wichtiges" im Problemfall dann über Stunden oder Tage steht, weil du von dem eingesetzten Produkt keine Ahnung hast oder schlicht den Fehler nicht findest. :wink:

Wenn ein aktives System und ein Backupsystem mit ZFS Replikation und ein paar Minuten Versatz reicht, ist das recht banal. Im Crashfall muss man dann halt manuell beim Backupsystem die Shares aktivieren und die VMs importieren.

Wie funktioniert das genau? -> weil das klingt mir stark danach, dass die Umgebung definitiv im Falle eines Storageausfalls crasht. Oder verstehe ich dich gerade falsch? Da es hier offenbar um eine Storagelösung als Backend für die Virtualisierungslösung gehen soll, wäre das klar ein Single Point of Failure und damit nicht unbedingt anzuraten, so denke ich. Da bei einem "Problem" auf dem Storage damit die komplette Umgebung steht. Das kann zumindest jede insich geclusterte/HA Lösung der halbwegs vertretbaren Fertigteilanbieter zumindest abfedern. Selbst mit den Einstiegsgeräten geht idR normales/einfaches HA in einem Dual Controller Setup.
 
Zuletzt bearbeitet:
HA ist leider ein inflationär genutzter und nicht geschützter Begriff weil man darunter jede Maßnahme zur Verbesserung der Verfügbarkeit eines Systems packen kann. Für mich ist entscheidend welche Ausfälle abgefangen werden und welche Zeit bis zur Wiederherstellung eines Dienstes vergeht.

Perfekt und komplex ist ein activ/activ Cluster bei dem sich die Nodes gegenseitig überwachen und beim Ausfall eines Systems ein anderes automatisch einspringt und den Dienst z.B. NFS Storage nach einer gewissen Umschaltzeit mehr oder weniger unterbrechungsfrei zur Verfügung stellt. Könnte man bei ZFS mit Dual Path SAS Storage oder per iSCSI Targets realisieren. Da sollte auf jeden Fall Support dabei sein, z.B. mit RSF-1 über Nexenta oder direkt bei HA Plugin for ZFS Open Storage Appliance

Eine Alternative ist ein Storagehead und zwei Storagenodes deren Daten übers Netz gespiegelt werden. Das fängt einen kompletten Storagenode Ausfall ab, nicht aber einen Ausfall des Storageheads. Dazu bräuchts wieder zwei davon und RSF-1.

Beide Massnahmen sind recht komplex, fehleranfällig und teuer und sollten eigentlich nicht ohne Support laufen. Wenn eine Ausfallzeit von vielleicht einer halben Stunde akzeptabel, die Umgebung nicht zu komplex ist oder eventuell ein kurzer Datenverlust im Crashfall hinnehmbar ist, kann man Verfügbarkeit auch durch ein simples identisches Reservesystem verbessern. Quasi manuelles HA, Russen-Technologie. Dazu den Datenpool per Kurzzeit ZFS Replikation z.B. alle 5 Minuten mit einem Backupsystem syncronisieren. Im Crashfall den Pool auf dem Backupsystem freigeben die VMs wieder importieren. Als Alternative im Crashfall den Pool physisch auf das Reservesystem umziehen und da wieder hochfahren. Dazu brauchts nur ausreichend freie Bays. Komplexität nahe Null.

Derartige manuelle Verfahren und die genannten Ausfallzeiten sind eine Option wenn Geld oder IT Personal eher knapp ist. Echtes HA für lau und ohne größere IT Abteilung würde ich nicht machen. Wenn richtig Geld mit der Notwendigkeit von HA verbunden ist, sollten aber die Lizenzkosten nicht das Problem sein, muss ja kein NetApp sein, ZFS und Nexenta wäre da eine nächst kleinere Option mit ZFS.
 
Zuletzt bearbeitet:
@p4n0
Also rein den den Daten, die du lieferst kann man absolut keine Empfehlung aussprechen geschweige denn eine Richtung.
Mal das HA außen vor, um 20TB mit ZFS bereit zu stellen "reicht" dir imho ne kleine Xeon E3 Kiste mit 4x8TB Platten, bisschen RAM und den 2x10G Interfaces... Für ne Virtualisierungsumgebung, wo es, so meine Erfahrung, aber nicht unbedingt darum geht, die dicksten VMs mit xxTB pro VM zu betreiben, sondern wo es eher darum geht, viele VMs mit ihren "Basis" 20-100GB zu stemmen, kommt bei 20TB ne recht große Menge bei rum.
-> unsere NetApp Storage Cluster auf der Arbeit haben zusammen gerade mal etwas über 20TB nutzbar und stemmen über 300VMs. Da sprechen wir aber auch weit über 100HDDs (SAS/FC mit 10/15k).
Spinn den Faden weiter -> 20TB könnten auch größer 50x 400GB SSDs inkl. Hotspares und entsprechend Reserve für die Raidlevel sein, wenn es um massivste IO Last geht!

Hi & Danke fuer die Antwort.
Die 20TB waren schon etwas hochgegriffen und schon als Puffer fuer die Zukunft eingeplant.
Nutzdaten aktuell sinds etwa 4TB, wobei einige vHDDs noch zu groß dimensioniert sind. Da kann man noch weiter shrinken.

Es sind etwa 60VMs am roedeln.

Im Grundegenommen soll eine OpenStack Umgebung neu aufgebaut werden und von Grundauf stimmiger Geplant werden, vA der Storagebereich.

Ich möchte allerdings 'nur' die Ephemeral Storage planen, das sind quasi die VM Images an sich und das resultierende Delta, wenn
man eine Instanz verwendet.

Die Filer für /sdb etc.. sind nicht so kritisch, auch die Filer für Snapshots und Backups sind weniger kritisch.
Der Kosten/Nutzfaktor dies alles Redundant auszulegen hält sich nicht die Waage.

Wichtig ist dass sich alle VMs stets in konsistentem Zustand befinden.

Wenn du nicht 50k in Lizenzen ausgeben willst, so wirst du aber bestimmt faktisch recht hohe Beträge in die Hardware/die Platten investieren müssen, vor allen bei der Virtualisierung, wo Storagespeed direkt dicht gefolgt von der RAM Menge quasi das wichtigste ist, was man beachten MUSS -> und das erste ist, was man idR. verkackt bei der Planung :fresse:
Es ist in Ordnung und legitim wenn die Storagelösung Richtung 30k geht.
Meine Meinung ist jedoch dass bei Enterprise-Storagelösungen das Preisverhältnis zw. Soft und Hardware nichtmehr im Einklang steht.


Kurzum, ohne Infos, was da passieren soll, kann man wenig bis nichts empfehlen... Ins Blaue bringt normal auch keinen direkt weiter. Aber mal ein Versuch fürs "Blaue".
-> wenn du auf ZFS verzichten kannst. Ich verbaute jüngst ein Single Shelf, DualController Cluster System NetApp FAS 2554. Da stecken 2x9x2TB 7,2k SAS Platten drin (+ 2x HotSpare) + 4x 400GB SAS SSDs als Cache davor. Im Clusterbetrieb ist das Ding auf 9x2TB pro Controller im RaidDP eingedreht. Der Cache mit den vier 400GB SSDs klemmt bei beiden Aggregates "davor". Das Teil stemmt aktuell gut 20 VMs... Alles Windows Datacenter 2012 R2. Bisschen DC, bisschen SQL, bisschen Terminalserver, bisschen Kleinkram. -> läuft sehr anständig muss ich sagen. Sequenzielle Datenrate bringt ca. 7-8GBit/sec lesen wie schreiben durchgängig pro Controller -> sprich bei Verteilung über beide Controller entsprechend fast doppelt so viel. Random Access geht durch die SSDs auch entsprechend fix mit mehreren 1000 IO/sec.
Kostenpunkt wenn ich das recht in Erinnerung habe -> ca. 16k inkl. Lizenzen (Base License, Cluster License, NFS/iSCSI/SMB)
Es kann auf ZFS verzichtet werden, ich wollte urspruenglich in die Richtung planen da man mit ZFS und den verfügbaren Mitteln
was eigenes, gutes auf die Beine stellen kann, ohne an den Eiern der großen Anbieter haengen zu muessen.

Ansonsten hängt man ziemlich schnell in der Thematik mit Scrubbing und so Geschichten... Wobei das natuerlich kein k.o. Argument ist, dachte lediglich es waere vllt. an der Zeit nen Schritt nach vorn zu machen ;)


Das Ding wird bei massiver IO Last aber recht schnell wegbrechen, vor allem, wenn du mehr Last erzeugst, als die Cache SSDs wegstecken können... Die billigen 7,2k Platten knicken bei Random Last extrem ein. Größer geht bei den Dingern allerdings IMMER ;) Alles eine Geldfrage...
Wenn es rein um ZFS geht, würde ich mir an deiner Stelle mal externe Hilfe ins Haus holen... Dir nutzt ne Bastelkiste nix, wenn da irgendwas "wichtiges" im Problemfall dann über Stunden oder Tage steht, weil du von dem eingesetzten Produkt keine Ahnung hast oder schlicht den Fehler nicht findest. :wink:
Aktuell wird die Storage von insg. 4 SSDs (Caching devices bcache) & 6 phys. 7200er HDDs realisiert. Performancemäßig an der Grenze
aber noch nicht unterirdisch.
Gut, man muss fairerweise dazusagen dass insgesamt etwa 100GB RAM als Storage-Cache genutzt werden.

Schlechter wird's mit Sicherheit nicht. Und man könnte ja auch 2,5" 10k SAS Platten verwenden.
Oder günstigere SSDs nehmen und die mechanischen Platten komplett weglassen. Wichtig ist mir im endeffekt dass die Lösung nachhaltig wird - und - wie du schon angesprochen hast: Keine Bastelbude die im Ernstfall keiner mehr administrieren kann.

Danke & Grueße

[edit]
Die Netapp 2500er Serie sieht tatsaechlich sehr brauchbar aus,
ich werde mir mal Angebote einholen, danke fuer den Tipp! :)
 
Zuletzt bearbeitet:
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh