vSphere 5.5 Flash Read Cache: Performance und Praxis
vSphere 5.5 führt ein neues Feature namens vSphere Flash Read Cache (vFRC) ein. Das beschleunigt Lesezugriffe im SAN durch einen Cache lokaler SSD-Laufwerke.
Ein spannendes neues Feature – Grund genug das im Labor auszuprobieren
Die Testumgebung besteht aus einem HP Microserver N54L mit einer Samsung PRO 840 SSD (128 GB) und einer Benchmark-VM mit fio, die auf einem langsamen Datastore auf einer QNAP TS-210 liegt. Ohne vFRC liegen die Messwerte recht konstant bei knapp 50MB/s Lesedurchsatz (sequential read mit 16MB Blockgröße) und knapp 100 IO/s (random read mit 4K Blockgröße).
Der Test bestand aus zwei Serien mit verschieden großen Caches, die einer virtuellen Festplatte von 50GB zugeordnet waren. Getestet wurde alle 10 Minuten (je 30 Sekunden sequential read und 30 Sekunden random read), die ersten drei Messwerte der abgebildeten Graphen waren Tests ohne vFRC.
Man sieht deutlich, dass insbesondere bei 5GB vFRC (10% der Gesamtplattengröße) der Durchsatz und die IO/s signifikant ansteigen. Bei 1 GB vFRC (2% der Plattengröße) scheint sich der Cache nur sporadisch auszuwirken, der Cache stellt nur eine minimale Verbesserung dar.
Zur Ehrenrettung sei gesagt, dass der verwendete Benchmark von den Plattenzugriffen her den Worst-Case für einen Cache darstellt. Die Zugriffe erfolgen rein Zufällig auf Bereiche der 50GB Platte, es gibt keine Hot-Spots, die zu cachen sich besonders lohnen würde. Bei typischen Servern gibt es Daten, die besonders häufig gelesen werden und daher auch einen größeren Performancegewinn versprechen.
Wir gehen davon aus, dass vFRC zumindest bei unseren gehobenen Hostingprodukten zum Einsatz kommen wird.
Einschränkungen bei Einsatz des vSphere Flash Read Cache
In der Praxis gibt es einige Einschränkungen und Fallstricke, die man beim Einsatz des vFRC beachten muss:
- die virtuelle Maschine muss Hardwareversion 10 haben
- der vFRC cacht nicht alle SAN-Zugriffe des Host sondern muss den einzelnen virtuellen Festplatten der VMs fest zugeordnet werden (im Unterschied zu SSD-Caches in Storagesystemen)
- vFRC bringt einen RAM-Overhead auf dem Host mit sich, dieser ist abhängig von der Größe des Cache und der konfigurierten Blockgröße
- der vFRC stellt eine Ressource dar, die für das Einschalten der VM bereitstehen muss (vMotion auf Host ohne freien vFRC ist nicht möglich)
- der vFRC ist nicht in die HA-Admission Control integriert. Man kann mehr vFRC zuordnen als bei Ausfall von N Hosts zur Verfügung stehen. Bei CPU und RAM wird man hier gewarnt, bei vFRC muss man das manuell prüfen.
- vMotion benötigt länger, da die zugeordneten Caches mitkopiert werden
- Konfiguration nur über den Web-Client
- vSphere Flash Read Cache setzt Enterprise Plus-Lizenzen voraus
Zum weiterlesen: