Hauptreferenzen
ZFS L2ARC (Brendan Gregg) (2008-07-22) und ZFS und das Hybrid Storage Concept (Anatol Studlers Blog) (2008-11-11) enthalten das folgende Diagramm:
Frage
Soll ich die vertikale weiße Linie - auf der Ebene der SSDs - als Präferenz für die Verwendung separater SSDs interpretieren ?
- Vorzug nicht L2ARC und ZIL auf einer einzigen Platte mischen?
Hintergrund (Antwort auf Kommentare)
Persönlich kann ich zu Hause weder L2ARC noch ZIL mit einem Computer verwenden, der mir zur Verfügung steht. (Mein normaler Computer ist ein MacBookPro5,2 mit 8 GB Speicher und einem Hybrid-Seagate ST750LX003-1AC154. Es ist nicht geplant, das optische Laufwerk durch eine SSD zu ersetzen.)
An anderer Stelle: Bei der Arbeit wird das Kit neu verwendet, aber ich habe kein Datum und keine vollständigen Details. (Xserve RAID x2 in der Mischung ... zur Zeit stelle ich mir nicht vor, diese an ZFS weiterzugeben, aber ich bin aufgeschlossen.)
Meine Neugier für SSD-Best Practices sowohl für L2ARC als auch für ZIL begann, als ich Performance-bezogene Diskussionen im ZEVO-Bereich führte - insbesondere das unten erwähnte Thema, bei dem ein Benutzer sowohl L2ARC als auch ZIL auf einer einzigen Festplatte hat.
Andere Referenzen und Diskussionen
L2ARC-Screenshots (Brendan Gregg) (30.01.2009)
SLOG-Screenshots (Brendan Gregg) (26.06.2009)
[zfs-discussion] ZFS-Root-Backup / "Disaster" -Recovery und das Verschieben des Root-Pools (10.01.2011) empfehlen eine Kombination aus drei Dingen (Root-Pool, ZIL und L2ARC) auf einer einzelnen Festplatte.
… Die Kopfschmerzen nicht wert, die auftreten können, wenn versucht wird, alle 3 auf derselben Festplatte zu verwalten. Zum Beispiel, wenn Sie sich entschließen, den Inhalt der ZIL für Ihren Datenpool neu zu installieren und versehentlich zu löschen. Geben Sie keine Festplatten für Poolkomponenten oder für Pools frei, um die Verwaltung und Wiederherstellung zu vereinfachen. …
- Mich interessiert eher, ob es empfehlenswert ist, zwei dieser Dinge nicht auf einer einzigen Festplatte zu mischen .
/superuser//a/238744/84988 (2011-01-28) erwähnt "Cache (L2ARC-Cache) und Schreibprotokoll (ZIL) auf SSD" ( Singular ). Da es sich jedoch um FUSE und Windows handelt, sehe ich diese Antwort nicht als besonders relevant für allgemeinere und leistungsorientiertere Anwendungen von ZFS an.
@ChrisS hat ZIL und L2ARC am 16.08.2011 im Kommunikationsraum erwähnt.
http://forums.macrumors.com/showpost.php?p=14248388 (2012-01-31) behandelt mehrere SSDs:
Was Sie über ZFS wissen müssen: Es gibt zwei verschiedene Arten von Cache, Lese- und Schreibzugriff (L2ARC und ZIL), die normalerweise auf SSDs gespeichert sind. Die ZIL ist der Schreibcache. Das ist wahrscheinlich der Grund für dieses Missverständnis. Die ZIL wird bei jedem Schreibzugriff auf den Zpool gehämmert (vorausgesetzt, es handelt sich um ein aktives System). Das Problem ist, dass die Verwendung einer mlc-basierten SSD als ZIL dazu führt, dass sie sich abnutzen und recht schnell ausfallen. Sie benötigen eine (viel teurere) SLC-basierte SSD als ZIL-Laufwerk.
Ein Zpool, der ausschließlich aus SSDs besteht, ist nicht nur möglich, sondern funktioniert auch ganz gut. Außerdem sind für ZIL und L2ARC keine separaten Laufwerke erforderlich. Ja, Sie haben keine TRIM-Unterstützung, aber aufgrund des Copy-on-Write-Charakters von ZFS ist dies wahrscheinlich eine gute Sache.
ZFS funktioniert jedoch NICHT mit fast vollen (beispielsweise 85% oder höher) Zpools. Die Leistung beginnt erheblich zu sinken - unabhängig davon, ob Sie rotierende magnetische Medien oder Festkörper verwenden. Ein Mangel an TRIM-Unterstützung würde dieses Problem wahrscheinlich noch verschlimmern, aber es ist bereits ein Problem.
/server//a/397431/91969 (2012-06-11) empfiehlt:
- SLC-Typ-SSD (speziell nicht MLC) für ZIL
- MLC-Typ SSD für L2ARC.
/superuser//a/451145/84988 (2012-07-19) erwähnt eine singuläre "SSD für ZIL und L2ARC zur Beschleunigung von ZFS".
zevo.getgreenbytes.com • Thema anzeigen - Leistungsproblem mit der FW800-Verbindungsreihenfolge? (2012-09-24) befasst sich mit der Reihenfolge der Dinge in einem FireWire-Bus mit einer einzelnen SSD für ZIL und L2ARC
- Abgesehen von der Busbestellung hat mich dieses ZEVO-Thema dazu veranlasst, mich zu fragen, ob separate SSDs vorzuziehen sind.
Genauer gesagt: Ich habe mich über Interpretationen der weißen Linie im obigen Diagramm gewundert.
Antworten:
Kurze Antwort, da ich nicht sehe, welches Problem Sie lösen möchten ...
Wenn Sie können, verwenden Sie separate Geräte. Dies hängt von der Größe Ihrer Umgebung ab. Wenn es sich nur um ein einfaches Heimsystem oder eine virtualisierte oder eine All-in-One-ZFS-Lösung handelt , können Sie ein einzelnes Gerät verwenden.
In größeren oder leistungsstärkeren ZFS-Lösungen verwende ich Geräte, die speziell für ihre ZIL- oder L2ARC-Rollen geeignet sind ... ZB STEC ZeusRAM oder DDRDrive für ZIL und jede Enterprise SLC oder MLC SAS SSD für L2ARC.
Was tun Sie?
quelle
Es gibt von Anfang an einige grundlegende Missverständnisse in Bezug auf ZIL, die korrigiert werden müssen, bevor Sie fortfahren.
Verstehen Sie dies: Unter "normalen" Umständen wird ZIL / SLOG nicht berührt.
Es wird nur geschrieben, wenn synchrone Schreibvorgänge befohlen werden oder wenn sync = always für einen bestimmten Pool / Dataset aktiviert ist ("zfs get sync pool / dataset").
ZIL wird unter normalen Umständen niemals gelesen. Es ist eine Disaster Recovery-Funktion.
IE: Das ZIL ist nur da, wenn der Strom ausfällt. Es wird verwendet, um Daten wiederzugeben, die dem Betriebssystem zurückgespielt wurden, bevor diese Daten in den Pool übernommen wurden. Alle ZFS-Schreibvorgänge in den Pool (synchron oder asynchron) stammen aus Speicherpuffern.
Unter normalen Umständen kann der Slog-Eintrag verdunsten, sobald die Daten in den Pool gelangen. Es handelt sich lediglich um einen großen, kreisförmigen Schreibpuffer, der nicht sehr groß sein muss (selbst 1 GB ist in den meisten Fällen zu viel des Guten).
Nicht synchrone Schreibvorgänge werden im RAM gepuffert, sortiert und zu einem geeigneten Zeitpunkt auf die Festplatte geschrieben. Wenn die Stromversorgung unterbrochen wird, gehen diese Daten verloren, die FS-Integrität bleibt jedoch erhalten.
Andererseits ist L2ARC sowohl auf Lese- als auch auf Schreibebene stark ausgelastet.
Es gibt so etwas wie "zu viel l2arc", weil die Metadaten für das, was in l2arc enthalten ist, aus Ihrem ARC-RAM stammen (dh, wenn Sie die Größe von l2arc erhöhen, müssen Sie den RAM entsprechend erhöhen. Andernfalls kann dies zu schwerwiegenden Leistungseinbußen führen und irgendwann wird die Nutzung von l2arc deutlich unter "dem gesamten verfügbaren Speicherplatz" abflachen)
Trotz der Proteste einiger Hersteller können Sie einen Speichermangel nicht ausgleichen, indem Sie die Größe des l2arc erhöhen. (Mehrere Hersteller von Hardware-RAID-Arrays, die in ZFS-Appliances verzweigt sind, haben diese Annahme getroffen.)
tl; dr: Wenn Ihre E / A-Last Datenbankaktivität ist, ist es wahrscheinlich, dass ZIL hart zugeschlagen wird. Wenn es etwas anderes ist, ist es wahrscheinlich, dass es nur leicht berührt wird. Es ist sehr wahrscheinlich, dass bei 99,9% der Aktivitäten die ZIL-Funktionen niemals aktiviert werden.
Wenn Sie wissen, können Sie entscheiden, ob Sie eine SLOG-Partition für ZIL benötigen, ob sie mit der l2arc-Partition zusammenarbeiten kann oder ob sie ein Standalone-Laufwerk benötigt (und welches Leistungsniveau dieses Standalone-Laufwerk haben sollte).
quelle