Flashcache ist für diejenigen, die es noch nicht gesehen haben, eine Methode, um den Linux-Blockcache um ein SSD-Laufwerk zu erweitern. Es ist billiger als einen Server mit einer halben TB RAM nur zum Cachen zu betreiben.
Funktioniert das überhaupt?
Es sollte. Der Linux-Blockcache speichert die aufgerufenen Blöcke im Cache , nicht die Dateien . Solange Sie den KVM-Maschinen keinen direkten Zugriff auf die Block-Geräte gewähren (nicht), ist der Linux-Block-Cache aktiv. Wenn Sie jedoch sind KVM - Maschinen mit direktem Block-Gerät Zugriff auf die Antwort ist weniger klar.
Wenn Sie dateigesicherte virtuelle Festplatten verwenden, funktioniert dies auf jeden Fall.
Ich weiß nicht, ob Sie LV-gesicherte virtuelle Laufwerke verwenden.
Wie viel würde ich erwarten, um die Leistung zu steigern?
Das können wir nicht beantworten. Es hängt von einer Vielzahl von Dingen ab. In der Zusammenfassung erhalten Sie die beste Leistung, wenn Sie Ihre SSD so dimensionieren, dass sie größer als die Anzahl der aktiven Blöcke ist. Wenn Sie ein perfektes Caching erzielen, ist Ihre Leistung vergleichbar mit der Leistung Ihres gesamten Systems auf SSDs. Was Sie effektiv tun werden.
Wie groß muss die SSD sein?
Wir können Ihnen nicht helfen, die genaue Größe herauszufinden, die Sie benötigen. Mehr ist natürlich besser, aber das genaue Verhältnis zwischen Cache-SSD und Primärspeicher zu finden, ist keine einfache Sache.
Erschwerend kommt hinzu, dass Schreibvorgänge sofort gelöscht werden, z. B. bestimmte Dateisystemvorgänge und einige Datenbankkonfigurationen. Diese Schreibvorgänge werden nur kurz zwischengespeichert, und ihre Leistung wird durch das Vorhandensein oder Fehlen von Flashcache in keiner Weise beeinträchtigt.
Was passiert, wenn die SSD stirbt?
Dasselbe passiert, wenn Sie Linux anweisen, Caches abzulegen, aber mit einem gewissen Kniff. Bei Drop-Caches werden alle nicht gelöschten Schreibvorgänge, die sich im Block-Cache befinden, auf die Festplatte geleert. Was passiert, wenn die SSD verschwindet, hängt vom Caching-Modus ab :
Durchschreiben : Alle Schreibvorgänge werden parallel in den Cache und in den Primärspeicher geschrieben, sodass die Wahrscheinlichkeit eines plötzlichen SSD-Verlusts, der Fehler auf den VMs verursacht, sehr gering ist.
Writearound : Alle Schreibvorgänge werden in den Primärspeicher geschrieben und nur beim Lesen zwischengespeichert. Keine Chance auf Fehler in den VMs.
Rückschreiben : Alle Schreibvorgänge werden zuerst in den Cache und im Hintergrund in den Primärspeicher geschrieben. Die wahrscheinlichste Ursache für Fehler in Ihren VMs ist ein Ausfall der SSD, und ich würde diesen Modus in der Produktion nicht verwenden.
Wie viel schneller wäre ein Rückschreiben im Vergleich zu einem Durchschreiben und einem Umschreiben?
Kommt darauf an, wie viel du schreibst. Wenn Ihre Schreibvorgänge Ihren primären Speicher regelmäßig überlasten, kann die Leistungssteigerung erheblich sein. Wenn Sie hauptsächlich mit etwas Schreiben lesen, werden Sie wahrscheinlich keine Verbesserungen bemerken.
Außerdem ist das Zurückschreiben eine schlechte Richtlinie für das, was Sie tun. Verwenden Sie sie daher nicht.